Recarga de configuração do Monit - deve reiniciar os serviços monitorados?

10

Executando o Monit 5.4 em um servidor Ubuntu. Quando uso monit reload, parece que ele reinicia os serviços monitorados (Tomcat 7 nessa situação). É o comportamento esperado? A documentação diz :

recarregar - Reinicialize um daemon Monit em execução, o daemon relerá sua configuração, fechará e reabrirá os arquivos de log.

Eu esperaria que ele não reiniciasse nenhum serviço, mas apenas recarregasse sua configuração, dessa forma eu poderia alterar alertas por email e outros itens.

Esta é a saída de monit status

The Monit daemon 5.4 uptime: 15h 0m 

Process 'tomcat7'
  status                            Running
  monitoring status                 Monitored
  pid                               38842
  parent pid                        1
  uptime                            14h 30m 
  children                          0
  memory kilobytes                  3445964
  memory kilobytes total            3445964
  memory percent                    10.4%
  memory percent total              10.4%
  cpu percent                       14.8%
  cpu percent total                 14.8%
  port response time                0.018s to localhost:80 [HTTP via TCP]
  data collected                    Tue, 17 Jun 2014 15:39:36

System 'mytiny.company.net'
  status                            Running
  monitoring status                 Monitored
  load average                      [0.32] [0.49] [0.57]
  cpu                               15.5%us 0.2%sy 0.0%wa
  memory usage                      8217684 kB [25.0%]
  swap usage                        14980 kB [0.7%]
  data collected                    Tue, 17 Jun 2014 15:39:36

E esta é a configuração de monitoramento do Tomcat em monitrc

# Tomcat
check process tomcat7 with pidfile /var/run/tomcat7.pid
start program = "/etc/init.d/tomcat7 restart"
stop program = "/etc/init.d/tomcat7 stop"

if cpu > 60% for 2 cycles then alert
if cpu > 80% for 5 cycles then restart

if failed port 80 and protocol http
  then restart
if 5 restarts within 5 cycles then timeout

O restante do arquivo é o padrão, exceto o intervalo de verificação que é 60s. O Tomcat é executado na porta 80.

smonff
fonte
Quando você correu pela última vez monit reload? Foi há 14,5 horas atrás?
ewwhite
Sim, isso é verdade
smonff 17/06/2014
1
Existe alguma chance de que as regras de% de sua CPU estejam acionando uma reinicialização? Remova as regras da CPU e tente novamente.
ewwhite
1
As regras de CPU eram um problema aqui.
smonff
1
A solução está identificada?
Arvindwill

Respostas:

11

Não é isso que deveria acontecer. monit reloadrelê apenas seu arquivo de configuração e aplica novas alterações. Você tem o mesmo problema se você service monit restart?

Como você sabe que o Tomcat está realmente reiniciando?

Por favor, cole a saída de monit status.

ewwhite
fonte
Eu sei que ele é reiniciado porque o vejo reiniciando nos logs! Atualizada a pergunta com monit statussaída. Tentará o que você aconselhar mais tarde.
smonff
Publique também sua configuração do monit.
ewwhite