Sondes de découverte

Une sonde de découverte (aussi appelée plugin) est un script qui liste un ensemble d’éléments similaires comme les systèmes de fichiers ou les interfaces réseaux d’un équipement donné.

Cette sonde doit être exécutable en ligne de commande (shell) par l’utilisateur centreon (ou l’utilisateur du moteur de supervision). Il peut être exécuté localement ou à distance en utilisant des protocoles comme SSH ou NRPE.

Les résultats doivent être présentés dans un flux XML valide où chaque élément doit être décrit comme un attribut d’un noeud XML. Pour obtenir ce flux XML les sondes de supervision Centreon Plugins utilisent l’option ‘–mode=xxx –disco-show’.

Par exemple:

# /usr/lib/nagios/plugins/centreon_plugins.pl --plugin=os::linux::snmp::plugin --mode=list-interfaces --hostname=192.168.220.129 --snmp-version=2 --snmp-community=public --disco-show
<?xml version="1.0" encoding="utf-8"?>
<data>
    <label status="1" name="lo" total="10" interfaceid="1"/>
    <label status="1" name="eth0" total="1000" interfaceid="2"/>
</data>

Ici, l’attribut name correspond au nom de l’interface réseau. status représente l’état de l’interface (IFOPERSTATUS), total la bande passante (IFSPEED) et interfaceid l’identifiant de l’interface (IFINDEX).

La sonde de découverte doit également lister les attributs disponibles du flux XML via une option. Les sondes de supervision Centreon Plugins utilisent l’option ‘–mode=xxx –disco-format’.

Par exemple:

# /usr/lib/nagios/plugins/centreon_plugins.pl --plugin=os::linux::snmp::plugin --mode=list-interfaces --hostname=127.0.0.1 --disco-format
<?xml version="1.0" encoding="utf-8"?>
<data>
    <element>name</element>
    <element>total</element>
    <element>status</element>
    <element>interfaceid</element>
</data>

Ici 4 attributs sont disponibles: name, total, status et interfaceid.