[pgsql-jp: 40792] Re: pg_statsin fo 1.2でautovacuum情報取得について

yamada kazuhiro yamadak @ linkin.co.jp
2011年 5月 20日 (金) 10:11:15 JST


佐藤様

お世話になっております。山田です。

> lc_messages の値を C に設定して確認してみてください。
上記ご回答に従い、設定を変更したところ、データ取得できておりました。
ありがとうございます。

一点、気になるのですが、突然画面に表示されるログのプロンプトを、
表示しない設定は、あるのでしょうか?

ないようでしたら、こちらクローズとさせていただきます。


引用 Tomoaki Sato <sato @ sraoss.co.jp>:

> 佐藤です。
>
>> お世話になっております。山田です。
>>
>> ご回答ありがとうございます。
>>
>>> ログフィルタは有効にしていますか?(笠原様)
>>> データベースサーバはどのように起動しているでしょうか。(佐藤様)
>>
>> セットした記憶はあるのですが、ログフィルターが有効になっておりませんでし
>> た。
>>
>>> Syslog には自動バキュームとチェックポイントに関するメッセージ
>>> が出力されているでしょうか(佐藤様)
>>
>> こちらは出力されていることを確認しております。
>>
>> ご回答を参考に、以下のような作業を実施致しました。
>> しかしながら、結果はデータ取得できておりません。
>>
>> ・ログフィルターを有効に設定
>> -bash-3.2$ pg_ctl -D $PGDATA start | pg_get_logfilterinfo   
>> --postgres-datadir=$PGDATA &
>> [1] 3807
>> -bash-3.2$ サーバは起動中です。
>> [2011-05-19 16:50:31 JST][3811][][]LOG:  ライブラリ"pg_stat_statements"をロードしました
>> [2011-05-19 16:50:31 JST][3812][][]LOG:  データベースシステムは2011-05-19  
>> 16:50:21 JSTにシャットダウンしました
>> [2011-05-19 16:50:31 JST][3815][][]LOG:  自動バキュームランチャプロセス
>> [2011-05-19 16:50:31 JST][3811][][]LOG:  データベースシステムの接続受付準備が整いました。
> (snip)
>> 今回の作業について、何か原因などが見えましたら、ご教示お願いしたく存じます。
>
> ログに出力されるメッセージが日本語だからではないですかね。
>
> pg_get_logfilterinfo では、パイプで受け取ったメッセージを以下のパター
> ンでマッチングして解析しているので、日本語ではうまく処理できないんだと
> 思います。
>
> # autovacuum log format
> $FORMAT_ATVCM_IN1 = q(LOG: \s\s [0-9]* [:]* \s* automatic \s vacuum   
> \s of \s table \s \"(\w+)\.(\w+)\.(\w+)\": \s index \s scans: \s   
> (\d+) \Z);
> $FORMAT_ATVCM_IN2 = q( \s+ pages: \s (\d+) \s removed, \s (\d+) \s   
> remain \Z);
> $FORMAT_ATVCM_IN3 = q( \s+ tuples: \s (\d+) \s removed, \s (\d+) \s   
> remain \Z);
> $FORMAT_ATVCM_IN4 = q( \s+ system\susage: \s CPU \s   
> (\d+\.\d+)s/(\d+\.\d+)u \s sec \s elapsed \s (\d+\.\d+) \s sec \Z);
>
> # checkpoint log format
> $FORMAT_CHKPT_IN1 = q(LOG: \s\s [0-9]* [:]* \s* checkpoint \s   
> starting: \s ([\w\s]+) \Z);
> $FORMAT_CHKPT_IN2 = q(LOG: \s\s [0-9]* [:]* \s* checkpoint \s   
> complete: \s wrote \s (\d+) \s buffers \s \\((\d+\.\d+)\%\\); \s   
> (\d+)\s transaction \s log \s file \\(s\\) \s added, \s (\d+) \s   
> removed, \s (\d+) \s recycled; \s write=(\d+\.\d+) \s s, \s   
> sync=(\d+\.\d+) \s s, \s total=(\d+\.\d+) \s s \Z);
>
> lc_messages の値を C に設定して確認してみてください。
>
>
> ----
> Tomoaki Sato <sato @ sraoss.co.jp>
> SRA OSS, Inc. Japan
>




pgsql-jp メーリングリストの案内