本節(jié)簡(jiǎn)單介紹了一款用于分析PostgreSQL數(shù)據(jù)庫(kù)日志文件的工具:pgbadger,這是一款使用Perl實(shí)現(xiàn)的輕量級(jí)日志分析工具。
一娄猫、簡(jiǎn)介
pgbadger通過(guò)分析PG的日志文件,以圖表的形式展現(xiàn)數(shù)據(jù)庫(kù)的各項(xiàng)活動(dòng)和狀態(tài)信息,其愿景是:"Make your reports in seconds!".
特性
1.圖表輸出:輸出的圖表可單獨(dú)下載為PNG文件糊昙,這個(gè)功能對(duì)于DBA來(lái)說(shuō)荆永,用于數(shù)據(jù)庫(kù)巡檢截圖會(huì)比較管用。
2.并行分析:使用-j或-J指定并行度
3.壓縮文件:可支持gzip壓縮文件
4.增量報(bào)告:支持增量模式,比如按天分析,最后可以疊加為按周/月分析
詳細(xì)的Features列表請(qǐng)參見(jiàn)官網(wǎng).
要求
數(shù)據(jù)庫(kù)端開(kāi)啟日志百炬,可使用syslog、stderr污它、csvlog或jsonlog等多種格式剖踊。
log_destination='csvlog'
logging_collector=on
log_rotation_age=1d
log_rotation_size=128MB
log_min_duration_statement = 0
log_checkpoints = on
log_connections = on
log_disconnections = on
log_lock_waits = on
log_temp_files = 0
log_autovacuum_min_duration = 0
log_error_verbosity = default
二庶弃、安裝
pgbadger使用Perl實(shí)現(xiàn),需要安裝Perl相關(guān)的工具包:
yum -y install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
yum -y install perl-CPAN
cpan Text::CSV
cpan JSON::XS
下載最新的pgbadger,并安裝:
tar zxvf pgbadger-9.2.tar.gz
cd pgbadger-9.2.tar.gz
perl Makefile.PL
make && sudo make install
三、使用
命令示例,分析postgresql-2018-08-31_094131.csv文件,輸出pgreport.html文件:
#pgbadger postgresql-2018-08-31_094131.csv -o pgreport.html
[=======================> ] Parsed 110195 bytes of 110906 (99.36%), queries: 9, events: 3
LOG: Ok, generating html report...
通過(guò)報(bào)告文件基本上可以從宏觀和微觀上了解PG的運(yùn)行情況.
pgreport.html文件部分截圖:
四德澈、參考資料
pgbadger官網(wǎng)
pgbadger on GitHub:
pgbadger