Chapitre 20. Variables personnalisées d'objet

Exemples

Voici un exemple de la façon dont peuvent être définies les variables personnalisées dans différents types de définitions d'objets

define host {
    host_name     linuxserver
    _mac_address  00:06:5B:A6:AD:AA ; <-- Custom MAC_ADDRESS variable
    _rack_number  R32               ; <-- Custom RACK_NUMBER variable
    ...
}
       
define service {
    host_name       linuxserver
    description     Memory Usage
    _SNMP_community public    ; <-- Custom SNMP_COMMUNITY variable
    _TechContact    Jane Doe  ; <-- Custom TECHCONTACT variable
...
}
       
define contact {
    contact_name   john
    _AIM_username  john16  ; <-- Custom AIM_USERNAME variable
    _YahooID       john32  ; <-- Custom YAHOOID variable
    ...
}
       

Les variables personnalisées comme macro

Les variables personnalisées peuvent être référencées dans des scripts et exécutables que Nagios utilisent pour exécuter les contrôles, notifications, etc… en utilisant les macros ou variables d'environnement.

Pour éviter tous conflits de noms parmi les variables personnalisées de différents types d'objets, Nagios ajoute _HOST, _SERVICE ou _CONTACT au début des variables personnalisées d'hôtes, de services et de contacts des macros et des variables d'environnement. Le tableau ci-dessous montre la correspondance entre les variables personnalisées et leur macro ou variable d'environnement respectives pour les variables personnalisées définies dans l'exemple précédent.

Type d'objet

Nom de la variable

Nom de la macro

Variable d'environnement

Hôte

MAC_ADDRESS

$_HOSTMAC_ADDRESS$

NAGIOS__HOSTMAC_ADDRESS

Hôte

RACK_NUMBER

$_HOSTRACK_NUMBER$

NAGIOS__HOSTRACK_NUMBER

Service

SNMP_COMMUNITY

$_SERVICESNMP_COMMUNITY$

NAGIOS__SERVICESNMP_COMMUNITY

Service

TECHCONTACT

$_SERVICETECHCONTACT$

NAGIOS__SERVICETECHCONTACT

Contact

AIM_USERNAME

$_CONTACTAIM_USERNAME$

NAGIOS__CONTACTAIM_USERNAME

Contact

YAHOOID

$_CONTACTYAHOOID$

NAGIOS__CONTACTYAHOOID

Variables personnalisées et héritage

Les variables personnalisées d'objets peuvent être héritées comme n'importe quelle variable standard d'hôte, de service ou de contact.