一款mysql审计日志自动轮转自动清理工具:mysql-audit-extend

一、背景

mysql的审计功能有多种方案:

  • 第一种是开启默认的general_log,支持FILE和TABLE两种模式,会记录所有日志,QUERY类型未分离。
  • 第二种是使用mariadb的审计插件,同样适用于mysql,该插件支持日志轮转分割。
  • 第三种是mcafee开源mysql审计插件:mysql-audit,该插件兼容性强,安装方便,支持审计到SELETE、UPDATE、DELETE等灵活配置。

生产级比较推荐的方案是第三种,但是方案并不是完美的,因为mysql的审计日志增长非常快,一个公司内部的系统一天内的日志量都要几十兆大小,磁盘占用非常高,因此对该插件进行一些功能扩展势在必行,如:日志自动分割轮转、日志清理等必要功能。
基于此,开发mysql-audit-extend工具用于扩展mysql-audit的功能,提供审计之外的辅助功能。目前提供的功能如下:

  1. 日志分割轮转
  2. 日志清理

该工具采用命令行形式,指定日志文件路径日志大小限制日志文件数限制等参数,程序将自动后台运行,资源占用非常小。

二、源码

1.github仓库

https://github.com/womeng2009/mysql-audit-extend

2.gitee仓库

https://gitee.com/seeker_rs/mysql-audit-extend

三、文档说明

1.介绍

该程序是mysql-audit插件的扩展工具,提供一些必要的辅助功能。

程序形式:可执行二进制文件,4.95M左右。

2.安装
# 从Rust仓库crates.io 直接安装
cargo install mysql-audit-extend

或者

# 从gitee国内仓库下载最新版(请自行查看最新版版本号)
wget https://gitee.com/seeker_rs/mysql-audit-extend/releases/download/release-0.2.7/mysql-audit-extend
chmod 775 mysql-audit-extend
3.启动
# 查看帮助
mysql-audit-extend -h

OUTPUT:
USAGE:
    mysql-audit-extend [OPTIONS]

OPTIONS:
    -f, --max-file <MAX_FILE>    Maximum number of files to keep [default: 10]
    -h, --help                   Print help information
    -m, --max-size <MAX_SIZE>    Maximum file size, Unit: MB [default: 10]
    -p, --path <PATH>            Absolute path to log file [default:
                                 /var/lib/mysql/mysql-audit.json]
    -V, --version                Print version information


# 使用默认配置启动
mysql-audit-extend

# 使用自定义配置启动
mysql-audit-extend -p /var/lib/mysql/mysql-audit.json -m 100 -f 30
4.查看程序日志
# 执行日志
tail -f /tmp/seeker/mysql-audit-extend/log.log
# 错误日志
tail -f /tmp/seeker/mysql-audit-extend/log.error
5.平台支持

目前只支持Linux操作系统。

  • Linux
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值