Bonjour a tous,
Si vous surveillez des serveurs DELL ou IBM avec une carte management qui as une IP différente de l'OS il peut devenir très vite complique de vouloir rajouter SNMP trap pour ces hosts sans devoir faire des modifications assez lourdes dans la configuration de vos hosts.
Pour simplifier ce processus et ajouter la possibilité de définir une IP de management pour un host vous pouvez modifier le fichier /usr/share/centreon/bin/centTrapHandler-2.X
Apres la modification il suffit de rajouter la macro IPMANAGEMENT avec l'IP de la carte management qui enverra la trap.
Code a modifier, fichier /usr/share/centreon/bin/centTrapHandler-2.X, trouvez la ligne (91):
et remplacez la par:
En espérant que ce bout de code puisse servir a quelqu'un.
Si vous surveillez des serveurs DELL ou IBM avec une carte management qui as une IP différente de l'OS il peut devenir très vite complique de vouloir rajouter SNMP trap pour ces hosts sans devoir faire des modifications assez lourdes dans la configuration de vos hosts.
Pour simplifier ce processus et ajouter la possibilité de définir une IP de management pour un host vous pouvez modifier le fichier /usr/share/centreon/bin/centTrapHandler-2.X
Apres la modification il suffit de rajouter la macro IPMANAGEMENT avec l'IP de la carte management qui enverra la trap.
Code a modifier, fichier /usr/share/centreon/bin/centTrapHandler-2.X, trouvez la ligne (91):
Code:
my $sth = $_[0]->prepare("SELECT host_name FROM host WHERE host_address='$_[1]' OR host_address='$_[2]'");
Code:
my $query_host_name = "SELECT h.host_name FROM host h"; $query_host_name .= " inner join on_demand_macro_host m ON h.host_id = m.host_host_id"; $query_host_name .= " WHERE (m.host_macro_name LIKE '%_HOSTIPMANAGEMENT%' AND m.host_macro_value = '".$_[1]."' OR m.host_macro_value = '".$_[2]."')"; $query_host_name .= " OR (h.host_address = '".$_[1]."' OR h.host_address = '".$_[2]."')"; my $sth = $_[0]->prepare($query_host_name);
Comment