Como fazer um reconhecimento persistente no Icinga / Nagios?

2

Estou usando o Icinga (Nagios fork) para também monitorar o tempo de atividade de hosts e serviços externos. Atualmente, quando observo a contagem "Crítica", acho difícil decidir se um serviço interno é afetado (devo agir imediatamente) ou um serviço externo (apenas reconheço o problema).

Existe uma maneira de manter um reconhecimento de problemas para tempos de inatividade futuros do host / serviço verificado? Existe alguma maneira de reconhecer automaticamente a mudança de estado de hosts / serviços externos?

    
por blerontin 02.10.2013 / 10:39

1 resposta

3

Descobrimos como confirmar automaticamente hosts externos.

Primeiro, defina um manipulador de eventos para o host externo:

define host {
        name            some-external-server
        # ...
        event_handler   handle_external_host
        # ...
}

Em seguida, defina o comando a ser usado como o manipulador de eventos:

define command {
        command_name    handle_external_host
        command_line    $USER1$/eventhandlers/acknowledge_host_problem $HOSTNAME$ icingaadmin "Handled by external user"
}

Por fim, coloque o script do manipulador de eventos em um arquivo / usr / local / icinga / libexec / eventhandlers / acknowledledge_host_problem (ou onde seus manipuladores de eventos estão instalados):

#!/bin/sh

printf_cmd="/usr/bin/printf"
command_file="/usr/local/icinga/var/rw/icinga.cmd"

hostname="$1"
author="$2"
comment="$3"

# get the current date/time in seconds since UNIX epoch
now='date +%s'

# pipe the command to the command file
$printf_cmd "[%lu] ACKNOWLEDGE_HOST_PROBLEM;%s;1;1;0;%s;%s\n" $now "$hostname" "$author" "$comment" >> $command_file

Não se esqueça de tornar o script executável usando o comando "chmod + x" ou semelhante. Para detalhes sobre ACKNOWLEDGE_HOST_PROBLEM, consulte o Documentação de Icinga .

    
por 23.10.2013 / 11:28