Monitoring PGD Proxy#
プロキシは、クラスターとグループレベル、またはプロセスレベルで監視できます。
クラスターを介したモニタリング#
SQLを使用する#
すべてのグループの現在の構成は、 bdr.node_group_routing_config_summary ビューに表示されます。
bdr.node_routing_config_summary ビューには、現在のノードごとのルーティング構成が表示されます。
bdr.proxy_config_summary は、プロキシごとの構成を示します。
プロセスレベルでのモニタリング#
プロキシのヘルスチェック#
PGDプロキシは、次のHTTPヘルスチェックAPIエンドポイントを提供します。
APIエンドポイントはGET
要求に応答します。エンドポイントを使用する前に、エンドポイントを有効にして構成する必要があります。
Postgres configuration を参照してください。
Endpoint |
Description |
|---|---|
/health/is-ready |
プロキシが現在の書き込みリーダーに接続を正常にルーティングできるかどうかを確認します。 |
/health/is-live |
プロキシが実行されているかどうかを確認します。 |
/health/is-write-ready |
プロキシが現在の書き込みリーダーPGD 5.5.0以降に接続を正常にルーティングできるかどうかを確認します。 |
/health/is-read-only-ready |
プロキシが読み取り専用接続を正常にルーティングできるかどうかを確認しますPGD 5.5.0以降。 |
準備状況#
有効なGET 要求を受信したとき
デフォルト書き込みモードでは、プロキシは現在の書き込みリーダーに接続を正常にルーティングできるかどうかを確認します。
読み取り専用モードの場合、プロキシは読み取り専用接続を正常にルーティングできるかどうかを確認します。
いずれのモードでも、プロキシは最初に現在の書き込みリーダーに接続を正常にルーティングできるかどうかを確認します。それができる場合、チェックは成功です。そうでない場合、読み取り専用接続をルーティングできるかどうかを確認します。それができる場合、チェックは成功です。そうでない場合、チェックは失敗します。
チェックが正常に返された場合、APIはtrue
とHTTPステータスコード200 (OK)
を含む本文で応答します。それ以外の場合、false
を含む本文をHTTPステータスコード500 (Internal Server Error)
とともに返します。
ライブネス#
Livenessチェックは、HTTPステータスコード200 (OK) を含むtrue
またはErrorのいずれかを返します。
PGDプロキシサービスが開始に失敗するか終了すると、要求をリッスンするHTTPサーバーが停止するため、
false は返されません。
プロキシログの場所#
プロキシは、他のシステムサービスで監視できるシステムログにログを書き込みます。
syslog#
Debianベース -
/var/log/syslogRed Hatベース -
/var/log/messages
journalctl
コマンドを使用して、PGDプロキシのトラブルシューティングのためのログをフィルタリングおよび表示します。以下は、クイックリファレンスのためのサンプルコマンドです。
journalctl -u pgd-proxy -n100 -f
journalctl -u pgd-proxy --since today
journalctl -u pgd-proxy --since "10 min ago"
journalctl -u pgd-proxy --since "2022-10-20 16:21:50" --until "2022-10-20 16:21:55"