Le principal objet à configurer est la Commande qui lancera la notification personnalisée.
Elle doit être lancée avec les bons paramètres afin de pouvoir générer une notification détaillée et lisible.
Il faudra ensuite s'assurer de l'utiliser dans une Méthode de notification. Lorsqu'elle sera lancée, elle pourra accéder aux donnés de l'hôte ou du service à l'origine de la notification.
Les commandes sont exécutées par le Reactionner lorsque les conditions réunies par la Logique de notification sont réunies.
Elles ont accès spécifiquement à un certain nombre de macros.
Les données des macros peuvent venir de différents endroits :
Toutes les macros disponibles sur l'élément à l'origine de la notification et le contact à notifier sont disponibles pour la notification.
Ces macros permettent de paramétrer globalement le comportement des notifications.
Toutes les macros globales peuvent être utilisées indifféremment dans une commande de notifications, mais les macros suivantes leurs sont spécifiques :
| Nom de la macro | Valeurs possibles | Utilisation |
|---|---|---|
| $MAILURL$ | < une URL > | L'adresse de l'UI de visualisation de Shinken. (dans le but de donner au contact un lien vers l'élément). |
| $SENDER$ | < une adresse émetteur > | L'adresse mail de l'envoyeur, pour une notification mail. |
$NOTIFPLUGINDIR$ | < un chemin de fichiers > | Le répertoire dans lequel se trouve la commande de notification à exécuter. |
Les macros de l'élément peuvent être appelées dans la notification.
Dans le cas d'une notification d'un host, les macros du host sont disponibles.
Dans le cas d'une notification d'un check, les macros du host et du check sont toutes les deux disponibles.
De la même façon que les macros globales, toutes les macros des éléments peuvent être utilisées, mais les macros suivantes sont spécifiquement utiles :
| Nom de la macro | Valeurs possibles | Utilisation |
|---|---|---|
| $HOSTNAME$ | < un nom d'hôte > | Le nom de l'hôte. |
| $SERVICEDESC$ | < un nom de check > | Le nom du check, dans le cas d'un check. |
| $HOSTADDRESS$ | < une adresse > | L'adresse du host. |
| $_HOSTID$, $_SERVICEID$ | < un id > | L'identifiant Shinken de l'élément. |
| $HOSTSTATE$, $SERVICESTATE$ | < un status, format texte > | Le status de l'élément : UP, DOWN, UNREACHABLE pour un host ou OK, WARNING, CRITICAL, ou UNKONWN pour un check. |
| $LASTHOSTSTATEID$, $LASTSERVICESTATEID$ | < un status, format numérique > | Le status précédent de l'élément, par code de retour (0, 1, 2 ou 3). |
| $LASTHOSTSTATECHANGE$, $LASTSERVICESTATECHANGE$ | < temps unix, flottant > | La date du dernier changement de status de l'élément. |
| $DATE$ | < date, format dd/mm/yyyy > | La date du dernier check. |
| $TIME$ | < heure, format hh:mm:ss > | L'heure du dernier check. |
| $HOSTOUTPUT$, $SERVICEOUTPUT$ | < un output > | La sortie du check à l'origine de la notification. |
| $LONGHOSTOUTPUT$, $LONGSERVICEOUTPUT$ | < un output > | La sortie longue du check à l'origine de la notification. |
Les macros du contact pouvant être appelées dans la notification.
| Nom de la macro | Valeurs possibles | Utilisation |
|---|---|---|
| $CONTACTPAGER$ | < un numéro de téléphone > | Le numéro de téléphone du contact, pour une notification téléphonique. |
| $CONTACTEMAIL$ | < une adresse destinataire > | L'adresse mail du destinataire, pour une notification mail. |
$CONTACTADDRESS1$, [ ... ] $CONTACTADDRESS6$ | < les adresses > | Adresses supplémentaires du contact pour d'autre types de notifications |
Des macros spéciales permettent d'avoir des données concernant la notification en elle-même et la raison pour laquelle elle a été envoyée.
| Nom de la macro | Valeurs possibles | Utilisation |
|---|---|---|
| $NOTIFICATIONTYPE$ | < un type de notification > | Le type de notification à envoyer. Cela correspond au type d'événement qui a été constaté sur l'élément. |
| $ACKAUTHOR$ | < un nom de contact > | Pour le cas d'un acknowledge, la personne à l'origine de l'acknowledge. |
| $ACKDATA$ | < un message texte > | Pour le cas d'un acknowledge, le message de prise en compte. |
Pour les types de notifications, la liste des valeurs possibles est la suivante :
| Type | Événement source |
|---|---|
| PROBLEM | Le status de l'élément est non-OK. |
| RECOVERY | L'élément avait un problème, mais est de nouveau dans un status OK. |
| ACKNOWLEDGEMENT | Un utilisateur a envoyé par l'interface web un accusé de réception par rapport à un problème survenu à un hôte ou à un check. |
| FLAPPINGSTART, FLAPPINGSTOP | L'élément est entré ou sorti d'un contexte de FLAPPING. |
| FLAPPINGDISABLED | La détection a été désactivée pendant la durée du FLAPPING. |
| DOWNTIMESTART, DOWNTIMESTOP | L'élément est entré ou sorti d'une période programmée d'indisponibilité. |
| DOWNTIMECANCELLED | La période programmée d'indisponibilité de l'élément a été annulée en cours. |