12 PostgreSQLプラグイン

概要

Zabbix エージェント 2 の設定ファイルは、プラグインを設定するために使用されます。PostgreSQL プラグインの動作には、これらの Zabbix エージェント 2 の設定パラメータがサポートされています。

これらは個別の設定ファイル(例: postgresql.conf)に指定し、その後 Include ディレクティブを使用してこのファイルを Zabbix エージェント 2 の設定に追加することを推奨します。

PostgreSQL プラグインはロード可能なプラグインであり、PostgreSQL plugin repository で利用可能で、詳細が説明されています。

注意事項:

  • デフォルト値はプロセスのデフォルトを反映しており、同梱の設定ファイル内の値ではありません。
  • 値は environment variables をサポートします。
  • Zabbix は、BOM なしの UTF-8 エンコーディングの設定ファイルのみをサポートします。
  • "#" で始まるコメントは、行頭でのみサポートされます。

オプション

Parameter Description
-V --version プラグインのバージョンおよびライセンス情報を表示します。
-h --help ヘルプ情報を表示します(短縮形)。
-t, --test <item key> テスト用にプラグインを起動します(プラグイン設定は無視されます)。

パラメーター

Parameter Mandatory Range Default Description
Plugins.PostgreSQL.Default.CacheMode no prepare PostgreSQL接続のキャッシュモード。
サポートされる値:
prepare (default) - PostgreSQLサーバー上でプリペアドステートメントを作成します;
describe - サーバー上でステートメントを作成せずに、匿名のプリペアドステートメントを使用してステートメントを記述します。
"describe" は、PgBouncer のような接続プーラーを使用する場合など、環境がプリペアドステートメントを許可しないときに主に有用です。
Plugins.PostgreSQL.CallTimeout no 1-30 global timeout リクエストが完了するまでの最大待機時間(秒)。
Plugins.PostgreSQL.CustomQueriesPath no /usr/local/share/zabbix/custom-queries/postgreSQL for Unix systems

*:\Program Files\Zabbix Agent 2\Custom Queries\PostgreSQL for Windows systems, where * is the drive name from the ProgramFiles environment variable
カスタムクエリを含む .sql ファイルが置かれたディレクトリのフルパス。
Plugins.PostgreSQL.CustomQueriesEnabled no false 設定すると、postgresql.custom.query アイテムキーの実行を有効にします。無効の場合、カスタムクエリディレクトリのパスからクエリは読み込まれません。
Plugins.PostgreSQL.Default.Database no PostgreSQLへの接続に使用するデフォルトデータベース。アイテムキーまたは名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.Default.Password no PostgreSQLへの接続に使用するデフォルトパスワード。アイテムキーまたは名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.Default.TLSCAFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Zabbix エージェント 2 と監視対象データベース間の暗号化通信におけるピア証明書検証用の、最上位 CA 証明書を含むファイルのフルパス。名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.Default.TLSCertFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Zabbix エージェント 2 と監視対象データベース間の暗号化通信における PostgreSQL 証明書または証明書チェーンを含むファイルのフルパス。名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.Default.TLSConnect no Zabbix エージェント 2 と監視対象データベース間の通信に使用する暗号化方式。名前付きセッションで値が指定されていない場合に使用されます。
サポートされる値:
required - 識別確認なしで TLS を転送モードとして使用して接続します;
verify_ca - TLS を使用して接続し、証明書を検証します;
verify_full - TLS を使用して接続し、証明書を検証し、DBHost で指定されたデータベース識別子(CN)が証明書と一致することを確認します。
暗号化方式が未定義の場合は、暗号化されていない接続を意味します。
Plugins.PostgreSQL.Default.TLSKeyFile no
(yes, if Plugins.PostgreSQL.Default.TLSConnect is set to verify_ca or verify_full)
Zabbix エージェント 2 と監視対象データベース間の暗号化通信における PostgreSQL 秘密鍵を含むファイルのフルパス。名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.Default.Uri no PostgreSQLへの接続に使用するデフォルトURI。アイテムキーまたは名前付きセッションで値が指定されていない場合に使用されます。

埋め込み資格情報を含めないでください(無視されます)。
URI形式に一致している必要があります。
サポートされるスキーム: tcp, unix
例: tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Default.User no PostgreSQLへの接続に使用するデフォルトユーザー名。アイテムキーまたは名前付きセッションで値が指定されていない場合に使用されます。
Plugins.PostgreSQL.KeepAlive no 60-900 300 未使用のプラグイン接続が閉じられるまでの最大待機時間(秒)。
Plugins.PostgreSQL.Sessions.<SessionName>.CacheMode no prepare PostgreSQL接続のキャッシュモード。
<SessionName> - アイテムキーで使用するセッション名を定義します。
サポートされる値:
prepare (default) - PostgreSQLサーバー上でプリペアドステートメントを作成します;
describe - サーバー上でステートメントを作成せずに、匿名のプリペアドステートメントを使用してステートメントを記述します。
"describe" は、PgBouncer のような接続プーラーを使用する場合など、環境がプリペアドステートメントを許可しないときに主に有用です。
Plugins.PostgreSQL.Sessions.<SessionName>.Database no セッション接続用のデータベース。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.Sessions.<SessionName>.Password no Must match the password format. セッション接続用のパスワード。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCAFile no
(yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect is set to verify_ca or verify_full)
最上位 CA 証明書を含むファイルのフルパス。ピア証明書の検証に使用します。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile is specified PostgreSQL証明書または証明書チェーンを含むファイルのフルパス。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSConnect no PostgreSQL接続の暗号化方式。
<SessionName> - アイテムキーで使用するセッション名を定義します。

サポートされる値:
required - 識別確認なしで TLS を転送モードとして使用して接続します;
verify_ca - TLS を使用して接続し、証明書を検証します;
verify_full - TLS を使用して接続し、証明書を検証し、DBHost で指定されたデータベース識別子(CN)が証明書と一致することを確認します。
暗号化方式が未定義の場合は、暗号化されていない接続を意味します。
Plugins.PostgreSQL.Sessions.<SessionName>.TLSKeyFile yes, if Plugins.PostgreSQL.Sessions.<SessionName>.TLSCertFile is specified PostgreSQL秘密鍵を含むファイルのフルパス。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.Sessions.<SessionName>.Uri no 名前付きセッションの接続文字列。
<SessionName> - アイテムキーで使用するセッション名を定義します。

埋め込み資格情報を含めないでください(無視されます)。
URI形式に一致している必要があります。
サポートされるスキーム: tcp, unix
例: tcp://127.0.0.1:5432
tcp://localhost
unix:/var/run/postgresql/.s.PGSQL.5432
Plugins.PostgreSQL.Sessions.<SessionName>.User no 名前付きセッションのユーザー名。
<SessionName> - アイテムキーで使用するセッション名を定義します。
Plugins.PostgreSQL.System.Path yes PostgreSQLプラグイン実行ファイルへのパス。
使用例: Plugins.PostgreSQL.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-postgresql
Plugins.PostgreSQL.Timeout no 1-30 global timeout リクエスト実行のタイムアウト(リクエストの完了を待機してから停止するまでの秒数)。

関連項目: