postgresql 日志分析工具 pgFounie
pgFounie是一款专门为postgresql设计的日志分析工具。通过对postgresql的log进行分析,生成详细的报告。
三大功能:
* 分析postgresql日志,确认查询语句的执行时间,辅助优化。
* 分析VACUUM命令日志,有助于分析数据库的写活动,辅助制定更好的VACUUM策略。
* 结合Tsung压力测试工具,分析压力测试日志,辅助系统性能测试。
pgFounie特点:
代码
* pgFouine is written in PHP, is object oriented and easily extensible if you need specific reports.
* pgFouine is free software and is distributed under the GNU General Public License.
* pgFouine is designed to parse huge log files with a low memory footprint.
* You can visit the pgFouine project site hosted by pgFoundry.
pgFounie安装:
[root@daduxiong software]# yum install php
[root@daduxiong software]# rpm -ivh pgfouine-1.2-1.noarch.rpm
pgFounie命令参考:
代码
[postgre@daduxiong ~]$ pgfouine.php --help
Usage: /usr/bin/pgfouine.php -file <file> [-top <n>] [-format <format>] [-logtype <logtype>] [-report [outputfile=]<block1,block2>]
-file <file> log file to analyze
- read the log from stdin instead of -file
-top <n> number of queries in lists. Default is 20.
-format <format> output format: html, html-with-graphs or text. Default is html.
-logtype <logtype> log type: syslog, stderr or csvlog. Default is syslog.
for stderr, you have to use the following log_line_prefix: '%t [%p]: [%l-1] '
-report [outputfile=]<block1,block2> list of report blocks separated by a comma
report blocks can be: overall, hourly, bytype, slowest, n-mosttime,
n-mostfrequent, n-slowestaverage, history, n-mostfrequenterrors,
tsung, csv-query
you can add several -report options if you want to generate several reports at once
-examples <n> maximum number of examples for a normalized query
-onlyselect ignore all queries but SELECT
-from "<date>" ignore lines logged before this date (uses strtotime)
-to "<date>" ignore lines logged after this date (uses strtotime)
-database <database> consider only queries on this database
(supports db1,db2 and /regexp/)
-user <user> consider only queries executed by this user
(supports user1,user2 and /regexp/)
-keepformatting keep the formatting of the query
-maxquerylength <length> maximum length of a query: we cut it if it exceeds this length
-durationunit <s|ms> unit used to display the durations. Default is s(econds).
-title <title> define the title of the reports
-syslogident <ident> PostgreSQL syslog identity. Default is postgres.
-memorylimit <n> PHP memory limit in MB. Default is 512.
-quiet quiet mode
-debug debug mode
-profile profile mode
-help this help
事例:
postgresql日志事例:http://pgfouine.projects.postgresql.org/reports/sample_default.html#overallstatsreport
VACUUM日志分析事例:http://pgfouine.projects.postgresql.org/vacuum.html
Tsung支持事例:http://pgfouine.projects.postgresql.org/tsung.html
说明:
pgFounie工具是由PHP语言编写的,在安装时需要先安装php软件包。