monitのドキュメントに従ってmonitをインストールして構成しました。Apache以外のすべてのサービスは実行中としてリストされていますが、ApacheはNot Monitoredと表示しています。
monitの設定に関連する行は次のとおりです。
check process apache with pidfile /var/run/httpd.pid
group www
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/httpd stop"
if failed host localhost port 80
protocol http then restart
if 5 restarts within 5 cycles then timeout
サーバーからhttp:// localhost / server-statusおよびhttp:// localhostにアクセスできます。MonitはApacheの監視モードをアクティブとしてリストします。
サーバーはCentOS 5.4を実行しています。
親httpdサーバーのPIDファイルは正しい:
[server ~]$ cat /var/run/httpd.pid
2905
[server ~]$ ps auxc | grep httpd
root 2905 0.0 0.9 26952 4808 ? Ss 11:36 0:00 httpd
monit monitor apache
すると開始され、サービスを再起動した後は正常に動作しているようです。また、Webインターフェイスの[モニターの有効化]ボタンをクリックしてみてください。