Monit无法启动/停止nginx服务器

我有监控nginx的问题。 Monit可以监控nginx并显示资源使用情况(RAM使用情况等),但是无法启动/停止nginx。 我只得到一个简单的消息:“执行失败”。 系统日志不会告诉任何更多的信息。

我的monitrcconfiguration文件:

check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/nginx stop" group www-data 

重新启动任何其他受监控的程序(例如dovecot)都可以工作。 此外,手动运行nginx的作品

 /etc/init.d/nginx start 

系统日志:

  May 5 17:47:45 vm7508 monit[7079]: restart service 'nginx' on user request May 5 17:47:45 vm7508 monit[7079]: monit daemon at 7079 awakened May 5 17:47:45 vm7508 monit[7079]: Awakened by User defined signal 1 May 5 17:47:45 vm7508 monit[7079]: 'nginx' trying to restart May 5 17:47:45 vm7508 monit[7079]: 'nginx' stop: /etc/init.d/nginx May 5 17:48:15 vm7508 monit[7079]: 'nginx' failed to stop May 5 17:48:15 vm7508 monit[7079]: 'nginx' restart action done 

谢谢。

我有同样的问题,但在我的情况下,错误是明确的,该组是MySQL而不是万维网数据(我运行nginx在Ubuntu上),然后我改变conf.d文件,然后重新启动monit

处理'nginx'状态运行监视状态监视

希望能帮助到你。

你可能想检查你的进程的pid是否在那里。 通常它存储在/var/run/文件夹中。 如果pid文件丢失,则应手动杀死并启动进程。

同样的问题(来自Ubuntu 14.04 LTE软件包库的Monit 5.6)。 我不知道你用什么条件来自动重新启动nginx,但是你可以这样做:

 check process nginx with pidfile /var/run/nginx.pid if <YOUR CONDITION> then exec "/etc/init.d/nginx restart"