下载审计插件
https://github.com/pgaudit/pgaudit/releases
他的分支版本支持不同的PGSQL按需下载
编译安装审计插件
tar -xvf pgaudit-16.0.tar.gzmake install USE_PGXS=1 PG_CONFIG=/app/postgresql/bin/pg_config
启用postgreSQL审计功能
修改配置文件# 启用 pgAudit
shared_preload_libraries = 'pgaudit'# 配置 pgAudit
pgaudit.log = 'all' # 记录所有类型的审计事件
pgaudit.log_catalog = 'on' # 记录系统表查询
pgaudit.log_parameter = 'on' # 记录传递给语句的参数
pgaudit.log_statement_once = 'off' # 每个语句都记录日志
# 日志目录和文件名
log_directory = '/app/postgresql/log/' # 可以是绝对路径或相对于数据目录的路径
log_filename = 'postgresql-%Y-%m-%d.log'
log_file_mode = 0600# 启用日志记录
logging_collector = on
log_rotation_age = 1d
log_rotation_size = 100MBlog_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h '
log_statement = 'all'
log_min_error_statement = error
log_min_messages = warning
client_min_messages = warning
log_connections = on
log_disconnections = on