Pages : 1
#1 Le 04/01/2007, à 11:16
- YannTech
SNMP Trap -> e-mail
Bonjour à tous,
Je sais pas si la question as déjà été posé mais il y a des erreurs sur la recherche des posts ....
Donc :
Je dispose de plusieurs appliance (fw nokia, nas, ....) et j'aimerais configuré le snmp trap sous mon serveur edgy.
Malheureusement je ne trouve pas de tuto pour configurer un serveur snmp gerant les traps et m'envoyant un petit e-mail pour chaque alerte Nagios2 semble ne pas le traiter en natif.
Merci par avance
Hors ligne
#2 Le 18/01/2007, à 13:40
- R3dL!GhT
Re : SNMP Trap -> e-mail
J'ai le meme probleme que toi ... en gros j'essaie d'écrire un serveur udp/162 qui ecoute en permanance les traps snmp entrante en ecrivant dans différents fichiers (en matchant certaines expressions regulières qui m'intéressent). Voici mon script :
use strict;
use IO::Socket;
my($sock, $oldmsg, $newmsg, $hisaddr, $hishost, $MAXLEN, $PORTNO, $TrapCPU);
$MAXLEN = 1024;
$PORTNO = 162;
$TrapCPU="/root/TrapCPU";
$sock = IO::Socket::INET->new(LocalPort => $PORTNO, Proto => 'udp')
or die "socket: $@" ;
print "Lancement du serveur en ecoute sur le port $PORTNO\n";
open (INFOCPU ,"+>$TrapCPU") || die "Le fichier d'info sur le cpu n'a pas pu etre cree";
while ($sock->recv($newmsg, $MAXLEN)) {
my($port, $ipaddr) = sockaddr_in($sock->peername);
$hishost = gethostbyaddr($ipaddr, AF_INET);
if ($newmsg =~ / cpuUtilNotify /){
#print STDOUT "Client $hishost said $newmsg\n";
print INFOCPU ("$newmsg");
}else{
print "ceci n est pas une trappe concernant le cpu\n";
}
}
die "recv: $!";
close(INFOCPU);
Le but du plugin nagios sera alors de lire les fichiers créés tout simplement et de parser "critical" et "cpuUtilNotify" par exemple...
En gros le problème est que les traps sont envoyées en continue et que du coup le socket n'est jamais fermé (c'est qd meme mal foutu les trap snmp !!). Je ne peux donc jamais fermer avec un close mon fichier qui est locké par le serveur et du coup avec accès aux infos...
Une idée ???
Pages : 1