くまきち

山と旅と家族が大事。
でも激しい物欲が理性と財布のタガを飛ばす
最近は自転車も乗ってる

[自転車][グランフォンド軽井沢] キット到着

2013-05-27 23:50:15 | 自転車
グランフォンド軽井沢のキットが届いた。

グランフォンドは去年に続いて2度目、その前はグルメフォンドに出たから、軽井沢は都合3年目3回目。



準備不足&天候が怪しい という状況。 どこまでいけるかな。


バイクは本日先輩の手によって東京へと運ばれていった。 グランフォンド当日までしばしのお別れ。

[PostgreSQL] pgFouine を使ってボトルネックを探してみる

2013-05-27 20:14:04 | SEまわり
PostgreSQL サーバ上でボトルネッククエリを見つけたくて pgFouine を使ってみた。

本来ならスムーズに動きそうなもんだが、ちょっとハマったのでメモを残す。

まずは、インストール 。
本家サイト からダウンロードして、どこでもいいので展開。

 
tar xfz pgfouine-1.2.tar.gz


以上。

あとは動かすだけなんだが、syslog 出力したログを取り込むのが前提なので、あらかじめ PostgreSQL の設定をそのようにしておくこと。

また、ログフォーマットにも指定がある。
最後のシングルクォートの前には空白が入っているので注意。

 
log_line_prefix='%t [%p]: [%l-1] '


このようにしておくこと。

で、最後のポイント。これにつまづいた。

ロケール指定がないこと。

initdb するときに --no-locale を指定するのは世界のお約束だが、やってないシステムでは postgresql.conf にて、以下の指定が要る。

 
lc_message='C'


これが 'ja_JP.UTF-8' なんて値になっていると、pgFouine は文句を吐きまくって、しまいには「有効なログが一行もないよ」と怒って終了する。

ロケール設定とか何につかうねん。


あとは、こうやって出力したログを次のように指定して実行すれば、結果 HTML が標準出力に出てくるので、ファイルに書き出すなりして見る。

 
./pgfouine.php -file /var/log/pgsql.log


以上。


ちなみに、pgfouine って、どう読めばいいんだろう。