我遇到了postgresql与pgBadger的问题.
由pgBadger生成的HTML报告是空的(0个查询,0个事件,没有关于postgres工作).但是postgres日志并不是空的.有活动等
我在postgresql.conf中尝试了很多与参数的组合,(例如,log_destination = syslog,其中logging_collector = off,log_line_prefix - 更多或更少的值),并且仍然相同.
目前,在postgresql.conf中设置了参数:
log_destination = 'stderr'
logging_collector = on
log_directory = 'pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
client_min_messages = notice
log_min_messages = notice
log_min_error_statement = error
log_min_duration_statement = 0
log_checkpoints = on
log_connections = on
log_duration = off
log_line_prefix = '%t [%r] [%p]: [%l-1] user=%u,db=%d,e=%e '
log_statement = 'all'
lc_messages = 'en_US.UTF-8'
Run Code Online (Sandbox Code Playgroud)
这就是我试图使用pgBadger以及我得到的结果:
#pgbadger -p -l /var/lib/postgresql/9.3/main/pg_log/postgresql-2014-10-15_125036.log -f stderr -o /var/lib/postgresql/9.3/main/pg_log/report.html
Run Code Online (Sandbox Code Playgroud)
要么
#pgbadger -p -l /var/log/postgresql/postgresql-9.3-main.log -f stderr -o /var/log/postgresql/log_report.html
Run Code Online (Sandbox Code Playgroud)
结果总是一样的:
/usr/src/pgbadger-6.2# pgbadger -p -l /var/lib/postgresql/9.3/main/pg_log/postgresql-2014-10-15_125036.log -f stderr -o /var/lib/postgresql/9.3/main/pg_log/report.html
[========================>] Parsed 12999 bytes of 12999 (100.00%), queries: 0, events: 0
LOG: Ok, generating html report...
Run Code Online (Sandbox Code Playgroud)
我的工作:Debian 7,postgresql 9.3,pgbadger-6.2
有人有类似的问题吗?
确保log_line_prefix
在postgresql.conf
是:
log_line_prefix = '%t [%p]: [%l-1] db=%d,user=%u '
Run Code Online (Sandbox Code Playgroud)
其实我也有同样的问题。您可以按照此文档解决您的问题吗?谢谢
http://www.antelink.com/blog/using-pgbadger-monitor-your-postgresql-activity.html
我认为您需要将 log_statement 更改为“none”。那么它可能会解决你的问题。
您应该使用 -v 选项进入详细模式。
pgbadger -f stderr -v /数据目录/postgresql-Sat.log -o /数据目录/postgresql-reports.html
请根据您的 PostgreSQL 集群数据更改数据目录