2016-07-28 1 views
-1

Zabbixサーバで同時にPostgreSQL接続の数を監視したいので、pg_stat_activityの行数をファイルに出力するcronジョブを作成しました。 zabbixで1分に1回。postgresql接続の数をモニタする

私の問題は、たとえば10のCOUNTを取得し、次に50の接続のクイックピークがあり、10に戻ってCOUNTをもう一度行うシナリオがある可能性があるということです。 この場合、ピークは検出されません。

私は、接続/切断ごとにinc/decするカウンタについて不思議でしたが、これをどうやって行うのか考えませんでした。 また、より高い頻度でCOUNTを実行し、毎分平均をとることもできますが、これで問題は解決しません。

何でも問題はありますか?

おかげで、 ガブリエル

+0

特定の問題がある場合は試してみる必要があります。 – Brick

答えて

1

使用ログファイル。ここでは、Linux用の簡単なチュートリアルです。

1)

postgres.confファイルが配置場所かどうかを確認してください:

postgres=# show config_file; 
┌──────────────────────────────────────────┐ 
│    config_file    │ 
├──────────────────────────────────────────┤ 
│ /etc/postgresql/9.5/main/postgresql.conf │ 
└──────────────────────────────────────────┘ 

2)

検索および編集パラメータ、それは()の前にどこかにコピーを保存中:

log_connections = on 
log_disconnections = on 
log_destination = 'csvlog' 
logging_collector = on 

3)

PostgreSQLを再起動:

sudo service postgresql restart 

sudo service postgresql reloadは十分でしょう、おそらくわからなく)

4)

ログが保存された場所を見つける:

postgres=# show data_directory; show log_directory; 
┌──────────────────────────────┐ 
│  data_directory  │ 
├──────────────────────────────┤ 
│ /var/lib/postgresql/9.5/main │ 
└──────────────────────────────┘ 

┌───────────────┐ 
│ log_directory │ 
├───────────────┤ 
│ pg_log  │ 
└───────────────┘ 

5)

ほぼ完了です。ファイル/var/lib/postgresql/9.5/main/pg_log/*.csvには、接続/切断に関する記録があります。この情報をどのように扱うかは、あなた次第です。