Nagios apenas cria um aviso para um serviço http

3

Gostaria de também monitorar os serviços não-cruciais com Nagios como por exemplo o nosso gitlab-servidor ou instância phpMyAdmin. Existe alguma maneira de criar apenas avisos em vez de erros críticos para alguns serviços?

No momento, estou usando o seguinte:

define service {
    host_name localhost
    use generic-service
    service_description HTTP GitLab
    check_command check_www!git.example.com!'/users/sign_in'
}

define command {
    command_name check_www
    command_line /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -e 'HTTP/1.1 200 OK' -u '$ARG2$'
}
    
por MeinAccount 19.10.2013 / 11:23

2 respostas

5

O plug-in de negação existe exatamente por esse motivo.

Usando a opção -c, você pode alterar CRITICAL para WARNING. Por exemplo, você poderia fazer isso:

define command {
    command_name check_www_no_crit
    command_line /usr/lib/nagios/plugins/negate -s -c WARNING /usr/lib/nagios/plugins/check_http -H '$ARG1$' -I '$HOSTADDRESS$' -e 'HTTP/1.1 200 OK' -u '$ARG2$'
}
    
por 21.10.2013 / 05:18
1

O problema parece ser que você está usando check_http com o -e flag, para verificar um código de retorno. Esse plugin não parece oferecer a opção de retornar um erro de ADVERTÊNCIA (em vez de CRÍTICO) se a verificação de -e falhar.

Você precisaria escrever um pequeno wrapper de script de shell em torno de check_http que passou a saída inalterada, mas verificou o código de retorno do plug-in, fez um exit 1 se o código de retorno do plug-in foi 2 e passou o retorno codifique inalterado de outra maneira.

    
por 19.10.2013 / 11:37

Tags