ログの監視について

いつも有益な情報を頂きありがとうございます。
現在、Zabbix 1.8.2を使用し、PostgreSQLのログ監視を行おうとしています。
しかし、以下アイテムを設定し取得を試みるも、取得できない状況です。
解決方法につきまして、ご教授頂ければと思います。

■アイテム設定
logrt["/var/log/postgresql/postgresql"]

■Zabbixエージェントログ
23762:20130326:103136.275 Directory [/var/log/postgresql/] cannot be found on the file system.
23762:20130326:103136.275 Filename [/var/log/postgresql/postgresql] does not contain a valid directory and/or format.
23762:20130326:103136.275 Active check [logrt["/var/log/postgresql/postgresql"]] is not supported. Disabled.

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

エラーメッセージにある通り、

 /var/log/postgresql/

というディレクトリが無いのだと思われます。

再度、監視したいログファイルがどこにあるかをご確認ください。

ユーザー jigzacc の写真

ご教授ありがとうございます。
「/var/log/postgresql/」自体は「/var/lib/postgresql/9.1/main/pg_log/」へのシンボリックリンクとなっています。
試に実体である「/var/lib/postgresql/9.1/main/pg_log/」を直接参照するように
アイテムを変更してみましたが、やはり同様のエラーが発生して取得できませんでした。

■アイテム設定
logrt["/var/lib/postgresql/9.1/main/pg_log/postgresql"]

■Zabbixエージェントログ
23762:20130326:121336.055 Directory [/var/lib/postgresql/9.1/main/pg_log/] cannot be found on the file system.
23762:20130326:121336.055 Filename [/var/lib/postgresql/9.1/main/pg_log/postgresql] does not contain a valid directory and/or format.
23762:20130326:121336.055 Active check [logrt["/var/lib/postgresql/9.1/main/pg_log/postgresql"]] is not supported. Disabled.

記載方法等に誤りがあるのでしょうか。。。

ユーザー TNK の写真

あとは、Zabbixエージェントを動かしているアカウント(通常「zabbix」)で、
そのディレクトリやログファイルにアクセスできるような権限設定になって
いるかをご確認ください。

ユーザー jigzacc の写真

TNK様
ご連絡が遅くなり、申し訳ございません。
対象のディレクトリ(シンボリックリンク)とログファイルは参照できる権限になっています。
※直ディレクトリはPostgreSQLの実体ディレクトリの為、権限を変更できない状態です。

今回は対応が難しい様子でので、一旦ペンディングし
時間のある時にでも再度実施しようと思います。

お付き合い頂き、ありがとうございました。

ユーザー TNK の写真

対象のディレクトリ(シンボリックリンク)とログファイルは参照できる権限になっています。

シンボリックリンクとログファイルに対して参照権限があっても、
そのファイルがあるディレクトリへのアクセス権限がなければ、
ログ監視をすることはできません。

※直ディレクトリはPostgreSQLの実体ディレクトリの為、権限を変更できない状態です。

強制的にパーミッションを変更すると、

 FATAL: data directory "/var/lib/pgsql/data" has group or world access
 DETAIL: Permissions should be u=rwx (0700).

というようなエラーメッセージがでて変更できないということであ
れば、ログの出力先をsyslogにするか、ログの出力先を別のディレ
クトリに指定して運用監視ツールからアクセスできる場所に出力す
るよう設定されてはいかがでしょうか?

PostgreSQLのバージョンにもよりますが、log_file_modeも設定し
てログファイルのパーミッションを変更することも必要かもしれま
せん。

 ご参考:
  http://lets.postgresql.jp/documents/technical/log_setting