これらを使うとパフォーマンスチューニングなどをするときに便利そうです。
ORACLEのSTATSPACKやAWR、BSTAT/ESTATに相当するものと言えるのかなと。
pg_reporterをCGIモードを利用しようとしてドキュメントの通りの設定だと私の環境では動きませんでした。
以下のように変更することで動きましたので、もしCGIモードで動かなかったら参考にしていただければと。
pg_reporter 1.0.1
http://pgstatsinfo.projects.postgresql.org/pg_reporter-ja.html
== ドキュメントからの抜粋 ==
■Apache HTTP Server の設定
〜(中略)〜
次に、Apache HTTP Serverの設定ファイルに以下を追加します。
この設定の5行目
2つ目のRewriteRuleのFlagを[R,L,QSA]から[PT,L,QSA]に変更することで動くようになりました。
あともう一つ、SELinuxを適切に設定しないといけないようです。
私はSELinuxの適切な設定はわからないのですが、とりあえず無効にすることで動きました。
さらに、アクセスするURLも書かれていないので悩みましたが、httpdモードの形式と同じようです。
http://host/id/template-name?parameters以下のように変更することで動きましたので、もしCGIモードで動かなかったら参考にしていただければと。
http://pgstatsinfo.projects.postgresql.org/pg_reporter-ja.html
■Apache HTTP Server の設定
〜(中略)〜
次に、Apache HTTP Serverの設定ファイルに以下を追加します。
<IfModule mod_rewrite.c>== ドキュメントからの抜粋ここまで ==
RewriteEngine On
RewriteRule ^/files$ /report [R,L,QSA]
RewriteRule ^/([0-9A-Za-z]+)/([^\./]+)$ \
/cgi-bin/pg_reporter?id=$1&template=$2 [R,L,QSA]
</IfModule>
<Directory "/var/www/html/report">
Options Indexes
</Directory>
2つ目のRewriteRuleのFlagを[R,L,QSA]から[PT,L,QSA]に変更することで動くようになりました。
/cgi-bin/pg_reporter?id=$1&template=$2 [R,L,QSA]↓↓↓↓↓↓↓
/cgi-bin/pg_reporter?id=$1&template=$2 [PT,L,QSA]
私はSELinuxの適切な設定はわからないのですが、とりあえず無効にすることで動きました。
- host : pg_reporter が動作しているホスト
- id : データベース接続情報として登録されたID
- template-name : レポート作成に使用するテンプレートファイルの拡張子を除いた名称
- parameters : "キーワード=値&..." 形式のパラメータ
とりあえず、template-nameにはindexとして、parametersはなしにするといいみたい。
idは.dbnamesファイルにの1カラム目に書いたものです。
ex.) http://localhost/postgres/index
えらい長い時間、ハマったよ…

