
Estou tentando configurar o Monit para que ele monitore os domínios caso o PHP trave. Exemplo:
check file php7.3-fpm-pidfile with path /var/run/php/php7.3-fpm.pid
start program = "/usr/sbin/service php7.3-fpm start" with timeout 60 seconds
stop program = "/usr/sbin/service php7.3-fpm stop"
if does not exist then restart
if failed unixsocket /run/php/php7.3-fpm-domain.co.uk.sock then restart
if failed unixsocket /run/php/php7.3-fpm-domain2.co.uk.sock then restart
if failed unixsocket /run/php/php7.3-fpm-domain3.co.uk.sock then restart
Como um teste simples:
check file php7.3-fpm-pidfile with path /var/run/php/php7.3-fpm.pid
start program = "/usr/sbin/service php7.3-fpm start" with timeout 60 seconds
stop program = "/usr/sbin/service php7.3-fpm stop"
if does not exist then restart
if failed unixsocket /run/php/php7.3-fpm-domain.co.uk.sock then restart
No entanto, o final falha ao reiniciar o Monit:
/etc/monit/conf-enabled/php-fpm:14: erro de sintaxe 'unixsocket'
Estou dentroMonitor 5.31.0, que deve ser novo o suficiente para ter a unixsocket
opção. o que estou perdendo?
Responder1
Tem certeza que irá verificar um arquivo, do meu ponto de vista você irá verificar um processo?
Minha sugestão para verificar o unixsocket e o processo:
check process php7.3-fpm-pidfile with path /var/run/php/php7.3-fpm.pid
start program = "/usr/sbin/service php7.3-fpm start" with timeout 60 seconds
stop program = "/usr/sbin/service php7.3-fpm stop"
if does not exist then restart
if failed unixsocket /run/php/php7.3-fpm-domain.co.uk.sock then restart
Você não pode usar todos os testes disponíveis (instruções "if") em todas as verificações.
monit -v -t
Process Name = php7.3-fpm-pidfile
Pid file = /var/run/php/php7.3-fpm.pid
Monitoring mode = active
On reboot = start
Start program = '/usr/sbin/service php7.3-fpm start' timeout 1 m
Stop program = '/usr/sbin/service php7.3-fpm stop' timeout 30 s
Existence = if does not exist then restart
Unix Socket = if failed /run/php/php7.3-fpm-domain.co.uk.sock type TCP protocol DEFAULT with timeout 5 s then restart
Trecho do manual, vejahttps://www.mmonit.com/monit/documentation/monit.html
TESTES DE CONEXÃO
Monit pode realizar testes de conexão através de portas de rede ou soquetes Unix. Um teste de conexão só pode ser usado dentro de um contexto de tipo de serviço de processo ou host.
Os testes de conexão estão disponíveis apenas com serviços de processo ou host.