| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Description
XXXX
Activation du module
Ce module permet de définir un tagger qui va utiliser automatiquement le nom pour modifier des propriétés sur les hôtes / clusters qui respectent sa règle de nommage ( une regexp ) sur une propriété.
Typiquement, le cas d'usage classique est de rajouter/modifier des templates d'hôtes/clusters sur les éléments s'ils respectent une règle de nommage sur le nom.
Activation du tagger
L'activation des taggers se fait dans le fichier de configuration du Synchronizer
- L'activation du tagger
Le module MODULE-NAME est un module qui peut être activé seulement sur le démon DEMON-TYPE.
- L'activation du module s'effectue en ajoutant le nom de ce module tagger dans le fichier de configuration du démon DEMON-TYPESynchronizer.
- Pour ce faire, ouvrer le fichier de configuration du DEMON-TYPE à Synchronizer à l'emplacement /etc/shinken/etc/shinken/XXXXXsynchronizers/synchronizer-master.cfg, et ajouter le nom de votre module tagger "MODULEregexp-NAMEtags".
Exemple: par défaut, nous livrons un module tagger dont le nom est "MODULEregexp-NAMEtags":
| Code Block | ||
|---|---|---|
| ||
define DEMON-TYPEsynchronizer { [...] modules #======== Taggers ========= taggers Module 1, Module 2, Module 3, MODULE-NAME TAGGER_01, regexp-tags [...] } |
Pour prendre en compte le changement de configuration, redémarrer l'Arbiterle Synchronizer:
| Code Block |
|---|
service shinken-arbitersynchronizer restart |
Définition du tagger
La configuration du module tagger se trouve par défaut dans le fichier /etc/shinken/modulestaggers/MODULEregexp-NAMEtags.cfg
- Vous trouverez aussi systématiquement un exemple dans /etc/shinken-user-example/configuration/daemons/DEMON-TYPEsynchronizers/modulestaggers/MODULEregexp-NAMEtags/MODULEregexp-tags-NAMEexemple.cfg
Exemple de fichier de configuration
| Code Block | ||
|---|---|---|
| ||
# =============================================================================== # regexp-tags #=============================================================================== define tagger # # ---------------------------------- { tagger_name regexp-tags order 1 modules sync-regexp-tag description This tagger will tag host based on the host_name } |
Détails des sections composant le fichier de configuration
Il est possible de définir plusieurs instances de tagger dans votre architecture Shinken.
- Chaque instance devra avoir un nom unique.
| Nom | Type | Unité | Défaut | Commentaire | ||
|---|---|---|---|---|---|---|
| Texte | --- | regexp-tags | Valeur obligatoire Nous vous conseillons de choisir un nom en fonction de l'utilisation du tagger pour que votre configuration soit simple à maintenir. Doit être unique. | ||
| Entier | --- | --- | Valeur obligatoire L'ordre du tagger dans l'interface de configuration ( Les taggers seront executé dans l'ordre lors de l'import ). | ||
| Liste | nom de modules | --- | Valeur obligatoire Liste de nom de modules utilisé par le tagger. Voir ci-dessous pour la configuration des modules. Le séparateur est le caractère : , | ||
| Texte | --- | --- | Une description du tagger affiché dans l'interface de configuration |
Configuration
La configuration du module se trouve par défaut dans le fichier /etc/shinken/modules/sync-regexp-tag.cfg
- Vous trouverez aussi systématiquement un exemple dans /etc/shinken-user-example/configuration/daemons/synchronizers/modules/sync-regexp-tag/sync-regexp-tag-exemple.cfg
Exemple de fichier de configuration
| Code Block | ||
|---|---|---|
| ||
#===================================================MODULE-NAME ---------------------------------- # # ============================ # sync-regexp-tag #=============================================================================== # # ---Daemons that can load this module: # - synchronizer (into a tagger object) # This module add new templates into hosts objects based on their hostname (regexp check) #=============================================================================== define module{ #======== Module identity ========= # Module name. Must be unique module_name sync-regexp-tag # Module type (to load module code). Do not edit. module_type sync-regexp-tag #======== Regexp definition and objects edition ========= # matched_prop: which object property to check the regexp matched_prop --- # ---host_name # regexp to try to detect matched_regexp .*shinkendemo.* # property: which property to edit on the hosts. Default: use (templates definitions) property use # method: how to edit the host "property". Several methods are available: # - replace = put the value if not another one is in place # - append = add the value at the END --- # --- prepend = add the value at the BEGINING # - set = just the value, erase the previous value set by other tagger or source. method append # value: which value to set on the property value --- #============================================================================================================ # define module { ... => Mettre le fichier livré par défaut ... } SHINKEN-DEMO-REGEXP-EXAMPLE } |
Détails des sections composant le fichier de configuration
Identification du module
Il est possible de définir plusieurs instances de module de type COLLECTEUR-NAMEsync-regexp-tag dans votre architecture Shinken.
- Chaque instance devra avoir un nom unique.
| Nom | Type | Unité | Défaut | Commentaire | ||
|---|---|---|---|---|---|---|
| Texte | --- | MODULEsync-regexp-NAMEtag | Nous vous conseillons de choisir un nom en fonction de l'utilisation du module pour que votre configuration soit simple à maintenir. Doit être unique. | ||
| Texte | --- | MODULEsync-regexp-NAMEtag | Ne peut être modifié. |
Regexp definition and objects edition
| Code Block | ||
|---|---|---|
| ||
... => Mettre le bloc de configuration ... #======== Regexp definition and objects edition ========= # matched_prop: which object property to check the regexp matched_prop host_name # regexp to try to detect matched_regexp .*shinkendemo.* # property: which property to edit on the hosts. Default: use (templates definitions) property use # method: how to edit the host "property". Several methods are available: # - replace = put the value if not another one is in place # - append = add the value at the END # - prepend = add the value at the BEGINING # - set = just the value, erase the previous value set by other tagger or source. method append # value: which value to set on the property value SHINKEN-DEMO-REGEXP-EXAMPLE ... |
Pour chaque règle Regexp, vous devrez définir un nouveau module et l'ajouter dans la configuration du tagger regexp-tags .
Vous pouvez copier l'exemple /etc/shinken/modules/sync-regexp-tag.cfg dans un nouveau fichier pour le modifier
Description du chapitre
Mettre tous les paramètres présents dans le chapitre de configuration| Nom | Type | Unité | Défaut | Commentaire | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Texte | Nom de propriété d'un hôte | host_name | la propriété que l'on va regarder pour vérifier qu'elle correspond à ce que l'on recherche.
| ||||||||||
| Texte | regexp python | --- | Valeur obligatoire Regexp auquel la propriété doit correspondre | ||||||||||
| Texte | --- | --- | Valeur obligatoire Comment la modification de la propriété va avoir lieu sur l’élément :
| ||||||||||
| Texte | Nom de propriété d'un hôte | --- | Valeur obligatoire Quelle propriété modifier | ||||||||||
| Texte | --- | --- | Valeur obligatoire La valeur qui sera ajouter/que prendra la propriété | XXXX | XXXX | XXXX |
| Code Block |
|---|
XXXX |