如何为Coldfusion 9创建PID文件?
我正在尝试用monit监视我的Coldfusion 9服务器,但它需要一个PID文件。我看到我应该创建一个'包装器',但我无法找到关于如何创建该包装器的任何信息。
更新
所以这些是我对coldfusion init脚本添加的内容:
case $ARG in
start)
cfstart
echo `/usr/bin/pgrep -o -f /opt/coldfusion9/runtime/bin/coldfusion9` > /var/run/coldfusion.pid;
;;
stop)
cfstop
rm -rf /var/run/coldfusion.pid
;;
restart)
echo "Restarting ColdFusion 9..."
cfstop
rm -rf /var/run/coldfusion.pid
cfstart
echo `/usr/bin/pgrep -o -f /opt/coldfusion9/runtime/bin/coldfusion9` > /var/run/coldfusion.pid;
;;
和monit config:
check process coldfusion with pidfile /var/run/coldfusion.pid
start program = "/etc/init.d/coldfusion_9 start" with timeout 30 seconds
stop program = "/etc/init.d/coldfusion_9 stop" with timeout 30 seconds
if cpu > 10% for 1 cycles then alert
if cpu > 80% for 3 cycles then alert
if cpu > 90% for 10 cycles then alert
if cpu > 100% for 3 cycles then alert
if totalmem > 1024.0 MB for 10 cycles then alert
if loadavg(5min) greater than 10 for 8 cycles then alert
if 10 restarts within 10 cycles then alert
group server
[所有警报只是为了密切关注它,直到我们知道它正在工作]
它似乎正在工作,在mmonit中出现,在重新启动时发送警报 - 任何人都可以看到有什么问题或改进的方法吗?
答案 0 :(得分:2)
如果你不能将CF的启动包装在脚本中来编写PID文件,那么另一种方法可能是使用其中一种方法here来获取PID,然后从ColdFusion的{{3}中调用它。 }