La fonctionnalité de duplication des Checks par donnée de l'Hôte (ou "duplicate foreach") permet de pouvoir dupliquer des checks sur un même hôte.
En effet, si un hôte héberge plusieurs services de même type (par exemple, plusieurs bases de données) il peut être intéressant de dupliquer toute la configuration de vérification pour chacun de ces services, en leur dédiant à chacun des checks.
Un template donné ne s'applique qu'à un hôte dans son ensemble et ne peut pas y être dupliqué. Pour pouvoir dupliquer les checks d'un hôte, il faut utiliser des checks ayant la propriété "Duplicate for each host data".
Nous verrons dans ce chapitre comment configurer la façon dont ils seront dupliqués sur cet hôte, et notamment comment obtenir des données spécifiques à chaque copie (identifiants, port de connexion...) qui seront accessible par Macros (données).
Pour qu'un check soit dupliqué, il doit remplir plusieurs conditions.
Le check peut alors utiliser, dans sa configuration, $KEY$, et $VALUE1$ à $VALUE16$. Ces macros seront remplacées de façon spécifique à chaque copie.
Pour que l'hôte duplique ses checks, il doit alors renseigner les valeurs à dupliquer, sous la forme de données.
Un hôte ayant des checks à dupliquer lui étant attachés doit obligatoirement fournir des valeurs, et les données apparaîtront en Warning si elle sont manquantes.
La donnée renseignée dans la donnée doit définir une ou plusieurs clés séparées par des virgules comme montré dans l'exemple.
Dès que la saisie du champ est terminée, le nombre de checks de l'hôte est mis à jour.
L'onglet check permet de vérifier le résultat de la duplication.
Les checks obtenus ont des configurations identiques. Pour pouvoir leur donner des données spécifiques, il faudra utiliser les valeurs.
Pour que chaque check puisse exécuter une vérification différente sur l'hôte, il est possible de paramétrer spécifiquement chaque copie.
Pour cela, l'hôte peut passer des arguments de duplication à chaque copie sous la forme de valeurs.
La syntaxe est la suivante :
red$(IndianRed)$$(CD5C5C)$,green$(ForestGreen)$,blue |
Notez que la valeur default_value ne peut remplir de façon implicite que la première valeur d'argument. Pour cet exemple, $VALUE2$ provoquera une erreur si il est utilisé dans les checks "green" et "blue".
| Check | Macro | Valeur |
|---|---|---|
| Check-Duplicate-red | $VALUE1$ $VALUE2$ | IndianRed CD5C5C |
| Check-Duplicate-green | $VALUE1$ | ForestGreen |
| Check-Duplicate-blue | $VALUE1$ | default_value1 |