Passe o pacote de traps SNMP para um daemon do PHP no Ubuntu

1

Eu tenho um servidor Ubuntu que está coletando traps SNMP recebidos. Atualmente essas armadilhas são manipuladas e registradas usando um script PHP.

arquivo /etc/snmp/snmptrapd.conf

traphandle default /home/svr/00-VHOSTS/nagios/scripts/snmpTrap.php

Este script é bastante longo e contém muitas operações de banco de dados. Normalmente, o servidor recebe milhares de traps por dia e, portanto, esse script está demorando muito tempo de CPU. Meu entendimento é que isso se deve ao alto custo inicial do script php toda vez que uma armadilha é recebida.

Eu recebi uma solicitação para reescrever isso e estava pensando em executar esse script como um daemon. Eu posso criar um daemon do Ubuntu. Minha pergunta é como posso passar o manipulador de armadilhas para este daemon usando snmptrapd.conf file?

Obrigado antecipadamente.

    
por Vajira Lasantha 08.05.2015 / 04:20

1 resposta

1

Enquanto sua pergunta realmente me confundiu, eu acredito que você deveria deixar de usar um script php para lidar com o serviço snmptrapd.

Esse arquivo ( /etc/snmp/snmptrapd.conf ) é usado pelo snmptrapd serviço que pode ser ativado em qualquer nível de execução desejado (3, 4, 5) e pode ser configurado para registrar traps para o MySQL, então não há necessidade de criar um daemon separado.

Em outra nota, talvez um pequeno script de shell seja mais eficiente do que tentar manipular a interceptação inicializando o interpretador PHP, carregando o SNMP, MySQL & extensões adicionais. Aqui está um exemplo simples , embora você definitivamente precise adicionar o manipulação de banco de dados (que você pode usar o meu exemplos para realizar ).

Com isso sendo dito, se você ainda deseja implementar uma solução com PHP, você provavelmente deve pesquisar a extensão SNMP disponível para PHP

    
por 08.05.2015 / 05:55