A solução foi mudar a substituição de comando de
[...]zimbra_backup-$(date +%a).tar.gz
para
[...]zimbra_backup-'date +%a'.tar.gz
Parece que o nagios executa alguma substituição de comando estranha quando encontra um sinal $
.
Na minha instalação atual do nagios eu verifico a existência de um backup remoto através do NRPE. Em particular, meu nrpe.cfg remoto (em um Ubuntu 8.x) é:
command[check_zimbra_backup]=/usr/lib/nagios/plugins/check_file_age -f \
/backupdir/zimbra_backup-$(date +%a).tar.gz -w 518400 -c 86400
A execução do comando retornou localmente OK:
$ sudo su -m nagios -c "/usr/lib/nagios/plugins/check_file_age -f \
/backupdir/zimbra_backup-$(date +%a).tar.gz -w 518400 -c 86400 "
FILE_AGE OK: /backupdir/zimbra_backup-Sun.tar.gz is 47661 seconds old and 10863637475 bytes
No entanto, meus registros mostraram CRITICAL:
nagios: SERVICE NOTIFICATION: zimbra backups;CRITICAL;notify-service-by-email;
FILE_AGE CRITICAL: /backupdir/zimbra_backup-Sun.tar.gz is 22373 seconds old and 10863637475 bytes
Observe como ele retorna um estado crítico depsite o fato de que o número de segundos relatados (22373) é menor que os parâmetros de aviso (86400s ou 24 horas).
O interessante é que executar o plugin NRPE remotamente retorna algo estranho:
$ sudo su -m _nagios -c "/usr/local/libexec/nagios/check_nrpe -H HOST \
-c check_zimbra_backup"
FILE_AGE CRITICAL: /backupdir/zimbra_backup-Sun.tar.gz is 23611 seconds old and 10863637475 bytes
ҷ?Oڷ'xڷ
Observe a última linha, que parece com algum tipo de saída distorcida.
O plug-in check_file_age
é a versão v1750 (nagios-plugins 1.4.11)
A solução foi mudar a substituição de comando de
[...]zimbra_backup-$(date +%a).tar.gz
para
[...]zimbra_backup-'date +%a'.tar.gz
Parece que o nagios executa alguma substituição de comando estranha quando encontra um sinal $
.