Devo / posso chamar Nagios programaticamente em vez de esperá-lo para pesquisar seu status?

1

Eu entendo como o Nagios trabalha, ele periodicamente pesquisa o status do sistema. Pode, por exemplo, verificar a existência de alguns arquivos ou a disponibilidade de alguma página web a cada minuto.

Mas e quando eu quero criar alertas diretamente do código do meu aplicativo? Digamos que o usuário tente executar alguma operação ilegal e eu quero receber um alerta disso.

Eu poderia, por exemplo, registrar este evento em um arquivo e configurar o Nagios para periodicamente pesquisar este arquivo. Isso parece apenas uma maneira indireta de fazer isso. Por que escrever, pesquisar e analisar um arquivo no sistema de arquivos se eu pudesse chamar alguma interface (REST, SOAP) com os detalhes do alerta?

Existe algo disponível que permite que meu aplicativo chame o Nagios diretamente (ou seria um projeto ruim por algum motivo)?

    
por Janne Mattila 15.11.2013 / 11:47

2 respostas

5

O que você está procurando é o conceito NAGIOS de serviços passivos , juntamente com o uso de NSCA para injeções de status.

O serviço é passivo - isto é, o NAGIOS nunca o pesquisará. Você executa o daemon NSCA no servidor NAGIOS e insere informações de status do cliente fazendo com que o aplicativo chame send_nsca . Quando o NAGIOS obtém esta informação de status, ele irá alertar de acordo com as definições de serviço.

Se você estiver configurando um serviço desse tipo, é recomendável habilitar a verificação de atualização para ele, acionar aproximadamente o dobro do atraso máximo que você espera entre injeções de status sucessivas e fazer com que o verificador de atualização vá direto para CRITICAL quando solicitado . Isso significará que, se alguma vez a injeção de status falhar, o NAGIOS informará que as atualizações pararam de chegar.

    
por 15.11.2013 / 11:54
1

Você pode a"lcançar seu exemplo hipotético com uma combinação de verificações passivas e serviços voláteis .

Além disso, como MadHatter disse, nenhuma discussão sobre serviços voláteis estaria completa sem verificação de a"tualização .

Se você insistir em usar uma API baseada na web, pode haver a"lgo viável na categoria da API do Nagios Exchange .

    
por 15.11.2013 / 17:47