启动一个新的postgres数据库实例并启用pgaudit日志。是否有一种方法可以监控数据库上的日志摄取量以及摄取率,使其不超过某个阈值(或者更好的是在超过该阈值时发出警报)?
获取当前日志文件的大小:
SELECT size FROM pg_stat_file(pg_current_logfile());
获取日志目录中所有文件大小的总和:
SELECT sum(stat.size)
FROM pg_ls_dir(current_setting('log_directory')) AS logs
CROSS JOIN LATERAL
pg_stat_file(current_setting('log_directory') || '/' || logs) AS stat;
这应该也能在Windows上工作。