Estamos usando o nsca para realizar verificações passivas.
define service {
name salt-service
register 0
active_checks_enabled 0
passive_checks_enabled 1
check_freshness 1
freshness_threshold 600
max_check_attempts 2
check_interval 5
retry_interval 3
}
define service {
use salt-service
service_description syncthing_procs-2
host_name x
check_command check_nrpe!syncthing_procs!10
display_name Syncthing Procs
}
Embora o freshness_threshold
seja de 10 minutos, há um caso em que as verificações passivas são antigas:
Oct 6 09:52:36 x shinken: [Tue Oct 6 09:52:35 2015] Warning : The
results of service 'syncthing_procs-2' on host 'x' are stale by 0d 0h
10m 16s (threshold=16714d 9h 42m 35s). I'm forcing an immediate check
of the service.
Oh, de onde vem o threshold=16714d 9h 42m 35s
enquanto eu o defino em 10 minutos no arquivo de configuração? Claro, a hora do sistema na VM Shinken e o host 'x' é o mesmo.
Existem muitos serviços que são obsoletos assim. Como você pode ver, depois que uma verificação passiva é obsoleta, usamos check_nrpe
para executar uma verificação ativa. E o problema é que agora temos muitos processos nrpe que parecem estar pendurados:
nagios 31404 1 0 Sep18 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 31727 1 0 Oct01 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 31732 1 0 Oct01 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 32148 1 0 Sep30 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
nagios 32157 1 0 Sep30 ? 00:00:00 /usr/sbin/nrpe -c /etc/nagios/nrpe.cfg -d
Eu apenas colo alguns. Na verdade, existem > 200 processos.
Então, além do limite errado, também tenho outra pergunta: por que há tantos processos nrpe depois disso? Eu sei que um novo processo será bifurcado ao executar uma verificação ativa. Mas deve desaparecer após a verificação, certo?
Ah, eu sei a resposta para a primeira pergunta.
Oh, where is the threshold=16714d 9h 42m 35s come from while I set it to 10 mins in the config file?
Parece que há um pouco diferente entre o Shinken e o Nagios. É o tempo da época em dias / horas / minutos / segundos.
expr $(date +%s) / 3600 / 24
16714