NRPE funciona na linha de comando; “Argumentos de linha de comando incorretos” do Nagios

NRPE funciona na linha de comando; “Argumentos de linha de comando incorretos” do Nagios

Estou tentando configurar o NRPE com um exemplo básico como primeiro passo para implantá-lo. Para simplificar, estou executando o NRPE e o Nagios localmente. O NRPE e o Nagios parecem estar funcionando, mas o uso do check_nrpe do Nagios falha misteriosamente. Editar: estou usando a versão 4.1.1 do Nagios e 2.15 do NRPE.

Acho que o NRPE está funcionando porque posso executar o check_nrpe manualmente:

/s/l/n/nagios_instance ❯❯❯ libexec/check_nrpe -H 127.0.0.1 -p 5667 -c check_total_procs      ⏎ 
PROCS CRITICAL: 536 processes | procs=536;150;200;0;

Acho que o Nagios está funcionando (e fornecendo argumentos corretos) porque escrevi esta verificação simples em python, arquivo chamado check_hello_world.py que fica no diretório libexec:

#!/usr/bin/env python

import sys
print str(sys.argv)
raise SystemExit, 2

As linhas relevantes da minha configuração do nagios são assim:

define host {
    use                             linux-server
    host_name                       yourhost
    alias                           My first Apache server
    address                         127.0.0.1
}

define command {
    command_name check_procs_nrpe
    command_line $USER1$/check_hello_world.py –H "$HOSTADDRESS$" -p 5667 -c "check_total_procs"
    #command_line $USER1$/check_nrpe –H "$HOSTADDRESS$" -p 5667 -c "check_total_procs"
}


define service {
    use                             generic-service
    host_name                       yourhost
    service_description             Check using the hello world plugin
    check_command                   check_procs_nrpe
    }

Como você pode ver, eu defino o comando check_procs_nrpe com um dos dois comandos, o script python simples ou o comando nrpe para verificar procs que funcionaram na linha de comando. Quando uso o script python, em alguns minutos recebo um e-mail com o texto:

Additional Info:

[/spare/local/nagios/nagios_instance/libexec/check_hello_world.py, –H, 127.0.0.1, -p, 5667, -c, check_total_procs]

Isso parece mostrar que o Nagios está funcionando corretamente, disparando alertas, enviando e-mails e corrigindo argumentos. Quando altero o comando para usar check_nrpe e executo novamente o Nagios, recebo um email com o texto:

Additional Info:

Incorrect command line arguments supplied

Eu realmente não sei para onde ir a seguir. Não tenho root nesta caixa e, portanto, não consigo reconfigurar facilmente o rsyslog para tentar obter informações de log. Será um prazer fornecer informações adicionais mediante solicitação. Alguma ideia?

Responder1

Concluindo, o problema acabou sendo que o travessão no '-H' não era na verdade um travessão. Foi um travessão. Na verdade, você pode ver isso claramente no texto acima se procurar. Infelizmente, o Source Code Pro (a fonte que uso no meu terminal e, portanto, no vim) não diferencia realmente travessões e travessões. Reabri um problema sobre isso, enquanto estou procurando uma nova fonte (e adicionando diferenciação de traço à minha lista de critérios).

informação relacionada