Postgresqlの死活監視

Postgresqlの死活監視

こちらを参考に作成してみましました。
http://www.himajin2001.com/wiki.cgi?page=%B5%BB%BD%D1%C5%AA%BB%A8%C3%CC-PostgreSQL%A4%CE%BC%AB%C6%B0%B1%BF%C5%BE#p6



select.txtという下記のsqlを記載したファイルを用意。

select now();


下記スクリプトで、select.txtのsqlをデータベースに投げ、
結果をresult.txtに吐き出して、その内容を評価。
result.txtの中身が空なら指定したメールアドレスにメールが飛びます。

#!/bin/sh

/usr/local/bin/psql -d template1 -U postgres -h 192.168.0.5 < select.txt > result.txt

if test -s result.txt;
then

  echo "OK"

else

  /bin/date | /usr/bin/mail -s 'DB Stopped' 送信先メールアドレス

fi

これをcronに設定しておく。


メールの送信元メールアドレスを指定したい場合は

/bin/date | /usr/bin/mail -s 'DB Stopped' 送信先メールアドレス -- -f 送信元メールアドレス