Les sources de type synchronizer_collector_excel permettent d'importer des éléments ( hôte, modele d'hôte, check, utilisateurs ... ) à partir d'un fichier Excel.
Les formats de fichier supportés sont :
Cette page explique comment définir ce type de collecteur ( pour l'utilisation du collecteur, voir la page Collecteur de type ( synchronizer-collector-excel ) - Import depuis des fichiers Excel ( xls ou xlsx ) ) .
Shinken impose l'agencement des informations dans le fichier Excel :
Shinken fournit un fichier d'exemple ( disponible ici : Excel-import-file.xlsx ) contenant déjà des éléments prêts à être importés. Il est possible de le modifier pour correspondre aux besoins :
Une fois les onglets et colonnes mis en place, il faudra adapter l'onglet "Configuration" pour importer correctement les éléments dans Shinken.
Il est conseillé d'utiliser le fichier fourni dans l'installation de Shinken. Ainsi, le fichier Excel aura toujours un format compatible avec la source installée sur le système. Il est disponible à l'emplacement suivant :
|
Le fichier doit contenir un onglet "Configuration" ( en anglais : "Configuration" ) qui contiendra le format d'import des éléments.
"Type" - "Propriétés dans Excel" - "Propriétés dans Shinken"
|
Il est possible d'avoir plusieurs sources du type synchronizer_collector_excel, pour importer plusieurs fichiers.
Choisissez un nom pour ce nouveau collecteur.
Mon-Collecteur-Synchronizer-Excel".Mon-Collecteur-Synchronizer-Excel" par le nom choisi.Pour ajouter une autre source, il faut :
Copier le fichier de définition de la source d'exemple : /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-excel/synchronizer-collector-excel-example.cfg dans le répertoire de définition des sources /etc/shinken/sources/ .
( Exemple : /etc/shinken/sources/collector__synchronizer-collector-excel__Mon-Collecteur-Synchronizer-Excel.cfg )
cp /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-excel/synchronizer-collector-excel-example.cfg /etc/shinken/sources/collector__synchronizer-collector-excel__Mon-Collecteur-Synchronizer-Excel.cfg |
Modifier la ligne source_name en remplaçant le nom par défaut "synchronizer-collector-excel-example" par le nom choisi "Mon-Collecteur-Synchronizer-Excel".
define synchronizer {
[...]
source_name Mon-Collecteur-Synchronizer-Excel
[...]
} |
Ajouter le nom de la nouvelle source au Synchronizer en modifiant le paramètre sources du fichier /etc/shinken/synchronizers/synchronizer-master.cfg .
define synchronizer {
[...]
sources Source 1, Source 2, Source 3, Mon-Collecteur-Synchronizer-Excel
[...]
} |
Redémarrez le Synchronizer pour qu'il puisse prendre en compte cette nouvelle source.
Un exemple est disponible dans le fichier : /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-excel/synchronizer-collector-excel-example.cfg
# CFG_FORMAT_VERSION 1 ( SHINKEN : DON'T TOUCH THIS LINE )
#================================================================================
# synchronizer-collector-excel
#================================================================================
# Daemons that can load this source:
# - synchronizer
# This collector import elements from an Excel file
#================================================================================
define source {
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────────── SOURCE IDENTITY ────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Source name [ Must be unique ] [ MANDATORY ] ───
# ─── /!\ Must be unique ───
# ─── /!\ Forbidden characters ?&"'$/#\\; ───
# ─── /!\ Length of the name must not exceed 40 characters ───
# ───
source_name synchronizer-collector-excel-example
# ─── Module type [ Do not edit ] [ MANDATORY ] ───
# ─── ───
module_type synchronizer_collector_excel
# ─── Display a description on the interface for this source ───
# ─── ───
description This source is about loading element from a Excel file.
# ─── Interval between each automatic import ───
# ─── Interval in minutes between each automatic import of the source ───
# ─── -> Setting it to 0 will deactivate the automatic import and can only be done manually ───
# Default : 0 ───
# ───
# import_interval 0
# ─── Order of priority when merging data ───
# ─── The final element will take the value of the element from the source with the highest priority ───
# ─── -> Priority at source with the order closest to 1 ───
# Default : 99 ───
# ───
# order 99
# ─── Make the source active ───
# ───
# ... : 0 => disabled ───
# Default : 1 => enabled ───
# ─── ───
# enabled 1
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ─────────────────────────────────────── MERGE OPTIONS ─────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Behaviour of mixing of sources ───
# ───
# Default : all => Merge with all source ───
# ... : dont_merge_with_other => Don't merge with other source ───
# ... : only_with_syncui => Merge only with syncui ───
# ... : all_without_syncui => Merge with all source without syncui ───
# ─── ───
# merge_mode all
# ─── New element calculation ───
# ───
# Default : authorized ( Authorized the calculation of new items ) ───
# ... : never_new ( Do not compute new items ) ───
# ─── ───
# compute_new_element authorized
# ─── Element difference calculation ───
# ───
# Default : authorized ( Authorized the calculation of differences ) ───
# ... : never_difference ( Do not compute differences ) ───
# ─── ───
# compute_element_difference authorized
# ─── Specific treatment with elements that are no longer present in the source ───
# ───
# Default : disabled ───
# ... : delete_if_missing_in_all_sources ───
# ... : delete_if_missing_in_this_source ───
# ─── ───
# compute_deleted_element_not_in_source disabled
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────────── PUT IN OPTIONS ─────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Targeted spaces to put elements ───
# ───
# Default : source_space => Available for staging ───
# ... : staging => Saved in staging ───
# ... : production => Saved in staging ───
# Saved in production ───
# ... : production_and_reload_arbiter => Saved in staging ───
# Saved in production ───
# Available to monitoring ───
# ─── ───
# put_in source_space
# ─── User responsible of import ───
# ─── accepted name : Only admin shinken name ───
# ───
# Default : admin ───
# ─── ───
# put_in_user admin
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────── EXCEL SPECIFIC OPTIONS ─────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Path of the excel file to load [ MANDATORY ] ───
# ─── ───
excel_file_path /etc/shinken-user/source-data/source-data-synchronizer-collector-excel/Excel-import-file.xlsx
} |
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────────── SOURCE IDENTITY ────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Source name [ Must be unique ] [ MANDATORY ] ───
# ─── /!\ Must be unique ───
# ─── /!\ Forbidden characters ?&"'$/#\\; ───
# ─── /!\ Length of the name must not exceed 40 characters ───
# ───
source_name synchronizer-collector-excel-example
# ─── Module type [ Do not edit ] [ MANDATORY ] ───
# ─── ───
module_type synchronizer_collector_excel
# ─── Display a description on the interface for this source ───
# ─── ───
description This source is about loading element from a Excel file.
# ─── Interval between each automatic import ───
# ─── Interval in minutes between each automatic import of the source ───
# ─── -> Setting it to 0 will deactivate the automatic import and can only be done manually ───
# Default : 0 ───
# ───
# import_interval 0
# ─── Filter the item types imported in Shinken by the source ───
# ─── If left empty or as a comment, no filter will be applied ───
# ─── so the source can import into Shinken any item type ───
# ─── ───
# ─── Values must be separated by a comma. Possible values are : ───
# ─── clusters, clustertpls, hosts, hosttpls, hostgroups, serviceshosts, ───
# ─── serviceshosttpls, servicesclusters, servicesclustertpls, servicetpls ───
# ─── contacts, contacttpls, contactgroups, escalations, notificationways ───
# ─── commands, businessimpactmodulations, macromodulations, resultmodulations, ───
# ─── timeperiods ───
# ─── ───
# type_to_import
# ─── Order of priority when merging data ───
# ─── The final element will take the value of the element from the source with the highest priority ───
# ─── -> Priority at source with the order closest to 1 ───
# Default : 99 ───
# ───
# order 99
# ─── Make the source active ───
# ───
# ... : 0 => disabled ───
# Default : 1 => enabled ───
# ─── ───
# enabled 1 |
Il est possible de définir plusieurs instances de module de type synchronizer_collector_excel dans l'architecture Shinken.
|
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ─────────────────────────────────────── MERGE OPTIONS ─────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Behaviour of mixing of sources ───
# ───
# Default : all => Merge with all source ───
# ... : dont_merge_with_other => Don't merge with other source ───
# ... : only_with_syncui => Merge only with syncui ───
# ... : all_without_syncui => Merge with all source without syncui ───
# ───
# merge_mode all
# ─── New element calculation ───
# ───
# Default : authorized ( Authorized the calculation of new items ) ───
# ... : never_new ( Do not compute new items ) ───
# ───
# compute_new_element authorized
# ─── Element difference calculation ───
# ───
# Default : authorized ( Authorized the calculation of differences ) ───
# ... : never_difference ( Do not compute differences ) ───
# ───
# compute_element_difference authorized
# ─── Specific treatment with elements that are no longer present in the source ───
# ───
# Default : disabled ───
# ... : delete_if_missing_in_all_sources ───
# ... : delete_if_missing_in_this_source ───
# ───
# compute_deleted_element_not_in_source disabled |
Option qui définit le mode de mélange entre les hôtes récupérés de cette source et les hôtes des autres sources ( voir la page Configuration - synchronizer-collector-excel ).
# ─── Source merge mode ───
# - all : Merge with all source ( Default ) ───
# - dont_merge_with_other : Don't merge with other source ───
# - only_with_syncui : Merge only with syncui ───
# - all_without_syncui : Merge with all source without syncui ───
# merge_mode all
|
|
À noter: Syncui est une source ( interne à shinken ) qui importe tous les éléments de l'interface de configuration. Chaque fois qu'une source est importée, elle l'est aussi. |
Les éléments proposés par la source sont soumis au calcul des nouveautés ( Voir la page Modules de Sources ( imports ) et de Taggers ( qualification ) ).
# ─── Detecting new elements ───
# - authorized ( Default ) ───
# - never_new ───
# compute_new_element authorized
|
|
Les éléments proposés par la source sont soumis au calcul des différences ( Voir la page Modules de Sources ( imports ) et de Taggers ( qualification ) ).
# ─── Calculate the differences ───
# - authorized ( Default ) ───
# - never_difference ───
# compute_element_difference authorized |
|
Permet de proposer en suppression, les éléments qui ne sont plus présents dans la ou les source(s).
Cette option peut être activée que si cette source met directement dans l'espace "Staging" ou "Production" ses éléments importés. |
# ─── Detect elements that are no longer present in the source ───
# - disabled ( Default ) ───
# - delete_if_missing_in_all_sources ───
# - delete_if_missing_in_this_source ───
# compute_deleted_element_not_in_source disabled |
|
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────────── PUT IN OPTIONS ─────────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Targeted spaces to put elements ───
# - source_space : Available for staging ( Default ) ───
# - staging : Saved in staging ───
# - production : Saved in staging ───
# Saved in production ───
# - production_and_reload_arbiter : Saved in staging ───
# Saved in production ───
# Available to monitoring ───
# put_in source_space
# ─── User responsible of import ───
# ─── accepted name : Only admin shinken name ───
# >>> admin ( Default ) ───
# put_in_user admin
|
Permet d'appliquer les différences et d'importer les nouveaux éléments de cette source directement dans l'espace "Staging" ou "Production", ou bien de les laisser dans l'espace de calcul des sources comme par défaut.
|
À noter : Une source avec le paramètre "put in" à la valeur "production" ou "production_and_reload_arbiter" ne poussera en production que les changements qui proviennent de la source et non tous les changements à appliquer en production ( tous les changements visibles dans la page de production ). Ce qui implique que si un utilisateur supprime un élément importé par une source avec le paramètre "put_in" à la valeur "production" ou "production_and_reload_arbiter", alors que l'élément est réimporté par la source. Il y aura en production 2 éléments avec le même nom, car la suppression manuelle de l'élément ne sera pas prise en compte, ce qui provoquera une erreur. |
Option qui permet de choisir l'utilisateur qui apparaîtra comme étant le dernier à avoir mis à jour les éléments.
À Noter : l'utilisateur doit être obligatoirement un administrateur Shinken. |
|
Ce chapitre liste tous les paramètres qui sont spécifiques aux sources de type synchronizer_collector_excel :
# ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
# │ ────────────────────────────────── EXCEL SPECIFIC OPTIONS ─────────────────────────────────── │ #
# └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
# ─── Path of the excel file to load [ MANDATORY ] ───
# ─── ───
excel_file_path /etc/shinken-user/source-data/source-data-synchronizer-collector-excel/Excel-import-file.xlsx |
|