Options du fichier de configuration principal


Notes

Quand vous créez ou modifiez des fichiers de configuration, n'oubliez pas que :

  1. Les lignes qui commencent avec le caractère '#' sont considérées comme des commentaires et ne sont donc pas traitées
  2. Les noms des variables doivent commencer au début de la ligne - ne mettez pas d'espace avant le nom
  3. Les noms des variables respectent la casse (majuscule/minuscule)

Configuration d'exemple

Un fichier de configuration d'exemple peut être créé en lançant la commande 'make config'. Par défaut, le fichier de configuration principal de Nagios s'appelle nagios.cfg - vous le trouverez dans la distribution de Nagios ou dans le sous-répertoire etc/ de votre installation.(c.a.d /usr/local/nagios/etc/)

Index

Fichier journal
Fichier de configuration des objets
Répertoire des fichiers de configuration des objets
Fichier de ressources
Fichier temporaire

Fichier d'état (log d'état)
Option d'agrégation des changements d'état
Intervalle de mise à jour des états agrégés

Utilisateur de Nagios
Groupe de Nagios

Option des notifications
Option d'exécution des contrôles de service
Option d'acceptation des contrôles passifs de service
Option de gestion d'événement

Méthode de rotation du journal
Chemin d'accès aux archives du journal

Option de contrôle des commandes externes
Intervalle entre les contrôles des commandes externes
Fichier de commandes externes


Fichier de commentaire
Fichier des temps d'indisponibilité des hotes et services
Fichier verrou

Option de mémorisation de l'état
Fichier de mémorisation de l'état
Intervalle de mise à jour des états mémorisés
Option d'utilisation des états du programme mémorisés

Option de journalisation dans Syslog
Option de journalisation des notifications
Option de journalisation des tentatives de contrôle de service
Option de journalisation des tentatives de contrôle d'hôte
Option de journalisation des gestions d'événement
Option de journalisation des états initiaux
Option de journalisation des commandes externes
Option de journalisation des contrôles passifs de service

Gestionnaire global des événement relatifs aux hôtes
Gestionnaire global des événements relatifs aux services

Temps de sommeil entre les contrôles
Méthode de délai inter-contrôles
Facteur d'entrelacement des services
Nombre maximal de contrôles de service simultanés
Fréquence de consolidation des services
Valeur de l'intervalle de temps

Option de contrôle agressif des hôtes

Option de détection de l'oscillation d'un service ou d'un hote[flap]
Seuil inférieur d'oscillation d'un service
Seuil supérieur d'oscillation d'un service
Seuil inférieur d'oscillation d'un hôte
Seuil supérieur d'oscillation d'un hôte

Option de dépendance "Soft" des services

Dépassement de délai du contrôle de service
Dépassement de délai du contrôle d'hôte
Dépassement de délai du controle du gestionnaire d'événement
Dépassement de délai de notification
Dépassement de délai de la commande de remontée de contrôle de service
Dépassement de délai de la commande de traitement des données liées aux performances

Option de remontée de contrôle de service
Commande de remontée de contrôle de service

Option de traitement des données liées aux performances

Option de vérification des contrôles de service orphelins

Option du controle de la validité des données d'un service
Option de l'intervalle du controle de la validité des données d'un service

Caractères illégaux dans la définition des objets
Filtrage des caractères illégaux en sortie d'une macro

Adresse email de l'administrateur
Pager de l'administrateur

Fichier journal

Format : log_file=<nom_de_fichier>
Exemple : log_file=/usr/local/nagios/var/nagios.log

Cette variable détermine le chemin d'accès au fichier journal principal de Nagios. Elle doit être la première variable définie dans le fichier de configuration, car Nagios essaiera d'enregistrer à cet endroit les erreurs découvertes dans le reste du fichier. Si vous avez activé la rotation des journaux, ce fichier sera automatiquement archivé et remplacé chaque heure, jour, semaine et mois.

Fichier de configuration des objets (hôtes)

Format : cfg_file=<nom_de_fichier>
Exemple :

cfg_file=/usr/local/nagios/etc/hosts.cfg

cfg_file=/usr/local/nagios/etc/services.cfg

cfg_file=/usr/local/nagios/etc/commands.cfg

Cette variable détermine le fichier de configuration des hôtes que Nagios doit utiliser pour la supervision. Ce fichier a toujours été appellé le fichier de configuration des "hotes", bien qu'il contienne bien plus que cela.Un fichier de configuration des objets contient les données de configuration pour les hôtes, les groupes d'hôtes, les contacts, les groupes de contact, les services, les commandes, etc. Vous pouvez éclater votre fichier de configuration des objets en plusieurs fichiers que vous incluerez, pour leur traitement, en ajoutant une directive cfg_file= pour chacun d'eux.

Répertoire des fichiers de configuration des objets

Format :

cfg_dir=<directory_name>

Exemple :

cfg_dir=/usr/local/nagios/etc/commands

cfg_dir=/usr/local/nagios/etc/services

cfg_dir=/usr/local/nagios/etc/hosts

Cette variable permet de définir un répertoire qui contiendra les fichiers de configuration des objets que Nagios doit utiliser pour la supervision. Tous les fichiers dans ce répertoire avec une extension .cfg seront traités comme des fichiers de configuration d'objets. Vous pouvez distribuer vos fichiers de configurations en plusieurs répertoires que vous incluerez, pour leur traitement, par des directives cfg_dir= pour chacun d'eux.

Fichier de ressources

Format: resource_file=<file_name>
Example: resource_file=/usr/local/nagios/etc/resource.cfg

Le fichier de ressources optionnel qui contient des définitions de macros du type $USERn$. Les macros $USERn$ permettent de stocker des noms d'utilisateurs, des mots de passe, et les éléments utilisés souvent dans les commandes (commes les chemin d'accès). Les CGI ne lisent pas les fichiers de ressource, si bien que vous pouvez y mettre des droits d'accès restrictifs (600 ou 660) pour protéger les données sensibles. Vous pouvez inclure de nombreux fichiers de ressources en ajoutant des directives resource_file au fichier de configuration principal - Nagios les traitera tous. Référez-vous au fichier resource.cfg d'exemple situé à la racine de la distribution de Nagios pour voir comment utiliser les macros $USERn$.

Fichier temporaire

Format : temp_file=<nom_de_fichier>
Exemple : temp_file=/usr/local/nagios/var/nagios.tmp

C'est un fichier que Nagios crée périodiquement durant la mise à jour des commentaires de données, des données d'état etc. Il est supprimé quand il n'est plus nécessaire.

Fichier d'état (journal des états)

Format : status_file=<nom_de_fichier>
Exemple : status_file=/usr/local/nagios/var/status.log

C'est le fichier utilisé par Nagios pour stocker l'état courant de tous les services supervisés. L'état de tous les hôtes associés avec ces services est également enregistrés dans ce fichier. Ce fichier est utilisé par le CGI d'état pour afficher l'état courant de la supervision dans l'interface web. Les CGI doivent avoir le droit d'accéder en lecture à ce fichier pour fonctionner correctement. Ce fichier est supprimé à l'arrêt de Nagios et recréé au démarrage.

Option d'agrégation des changements d'état

Format: aggregate_status_updates=<0/1>
Example: aggregate_status_updates=1

Cette option détermine si Nagios doit agréger les données de changement d'état des hôtes, services, et programme. Pardéfaut, les données d'état sont immédiatement mises à jour à chaque controle d'un service ou d'un hote. Ceci peut causer une charge CPU importante et de nombreuses entrées/sorties disque si vous contrôlez de nombreux services. Si vous voulez que Nagios ne mette à jour les données d'état (dans le journal des états) que toutes les quelques secondes (tel que défini par la variable status_update_interval), activez cette option. Si vous voulez des mises à jour immédiates, désactivez-la. Les valeurs possibles de cette variable sont :

Intervalle de mise à jour des états agrégés

Format: status_update_interval=<secondes>
Example: status_update_interval=15

Cette variable détermine la fréquence (en secondes) à laquelle Nagios mettra à jour les données d'état dans le journal des états. L'intervalle minimal est de cinq secondes. Si vous avez désactivé les mises à jour agrégées (grâce à l'option aggregate_status_updates), cette variable est sans effet.

Utilisateur de Nagios

Format : nagios_user=<nom_d_utilisateur/UID>
Exemple : nagios_user=nagios

Ceci détermine quel utilisateur doit être le propriétaire du processus de Nagios. Après le démarrage du programme, et avant toute supervision, Nagios abandonnera ses privilièges effectifs et se lancera sous cet utilisateur. Vous pouvez donner un nom d'utilisateur ou un UID.

Groupe de Nagios

Format : nagios_group=<nom_de_groupe/GID>
Exemple : nagios_group=nagios

Ceci détermine quel groupe doit être propriétaire du processus de Nagios. Après le démarrage du programme, et avant toute supervision, Nagios abandonnera ses privilièges effectifs et se lancera sous ce groupe. Vous pouvez donner un nom de groupe ou un GID.

Option des notifications

Format : enable_notification=<0/1>
Exemple : enable_notification=1

Cette option détermine si Nagios envoie ou non une notification quand il (re)démarre.Si cette option est désactivée, Nagios n'enverra aucune notification, quelque soit l'hote ou le service. Note : si vous avez activé la mémorisation d'état, Nagios ignorera ce paramètre au (re)démarrage et utilisera sa dernière valeur connue (telle qu'elle est stockée dans le fichier de mémorisation d'état), à moins que vous ne désactiviez l'option use_retained_program_state. Si vous voulez changer cette variable alors que la mémorisation d'état est activée (ainsi que l'option use_retained_program_state), vous devrez passer par la commande externe appropriée, ou la changer à travers l'interface web. Les valeurs possibles de cette variable sont :

Option d'exécution des contrôles de service

Format : execute_service_checks=<0/1>
Exemple : execute_service_checks=1

Cette option détermine si Nagios effectuera les contrôles des services lorsqu'il (re)démarrera. Si cette option est désactivée, Nagios n'effectuera aucun contrôle de service et restera dans un mode "de sommeil" (il peut quand même recevoir les contrôles passifs à moins qu'ils ne soient désactivés). Cette option est surtout utile pour définir des serveurs de supervision de secours, comme l'explique la documentation sur la redondance, ou si pour mettre en place un environnement de supervision répartie. Note : si vous avez activé la mémorisation d'état, Nagios ignorera ce paramètre au (re)démarrage et utilisera sa dernière valeur connue (telle qu'elle est stockée dans le fichier de mémorisation d'état), à moins que vous ne désactiviez l'option use_retained_program_state. Si vous voulez changer cette variable alors que la mémorisation d'état est activée (ainsi que l'option use_retained_program_state), vous devrez passer par la commande externe appropriée ou la changer à travers l'interface web. Les valeurs possibles de cette variable sont :

Option d'acceptation des contrôles passifs de service

Format : accept_passive_service_checks=<0/1>
Exemple : accept_passive_service_checks=1

Cette option détermine si Nagios accepte les contrôles passifs de service quand il (re)démarrera. Si cette option est désactivée, Nagios n'acceptera aucun contrôle passif de service. Note : si vous avez activé la mémorisation d'état, Nagios ignorera ce paramètre au (re)démarrage et utilisera sa dernière valeur connue (telle qu'elle est stockée dans le fichier de mémorisation d'état), à moins que vous ne désactiviez l'option use_retained_program_state. Si vous voulez changer cette variable alors que la mémorisation d'état est activée (ainsi que l'option use_retained_program_state), vous devrez passer par la commande externe appropriée ou la changer à travers l'interface web. Les valeurs possibles de cette variable sont :

Option de gestion d'événement

Format : enable_event_handlers=<0/1>
Exemple : enable_event_handlers=1

Cette option détermine si Nagios activera les gestionnaires d'événement quand il (re)démarrera. Si cette option est désactivée, Nagios ne lancera aucun gestionnaire d'événements lié aux hôtes ou aux services. Note : si vous avez activé la mémorisation d'état, Nagios ignorera ce paramètre au (re)démarrage et utilisera sa dernière valeur connue (telle qu'elle est stockée dans le fichier de mémorisation d'état), à moins que vous ne désactiviez l'option use_retained_program_state. Si vous voulez changer cette variable alors que la mémorisation d'état est activée (ainsi que l'option use_retained_program_state), vous devrez passer par la commande externe appropriée ou la changer à travers l'interface web. Les valeurs possibles de cette variable sont :

Méthode de rotation du journal

Format : log_rotation_method=<n/h/d/w/m>
Exemple : log_rotation_method=d

C'est la méthode de rotation que vous voulez que Nagios utilise pour le fichier journal. Les valeurs possibles de cette variable sont :

Chemin d'accès aux archives du journal

Format : log_archive_path=<chemin_d_accès>
Exemple : log_archive_path=/usr/local/nagios/var/archives/

C'est le répertoire où Nagios doit enregistrer les fichiers journaux ayant fait l'objet d'une rotation. Cette option est ignorée si vous n'avez pas activé la rotation du journal.

Option de contrôle des commandes externes

Format : check_external_commands=<0/1>
Exemple : check_external_commands=1

Cette option détermine si Nagios va vérifier le contenu du fichier des commandes à la recherche de commandes à exécuter. Cette option doit être activée si vous avez prévu d'utiliser le CGI de commande pour envoyer des commandes via l'interface web. Des programmes tiers peuvent également envoyer des commandes à Nagios en écrivant dans le fichier de commande, sous réserve que les droits nécessaires à l'accès au fichier ait été donnés, comme le souligne cette FAQ. Vous trouverez plus d'informations sur les commandes externes ici.

Intervalle entre les contrôles des commandes externes

Format : command_check_interval=<xxx>[s]
Exemple : command_check_interval=1

Si vous spécifiez un nombre suivi d'un "s" (par exemple 30s), c'est le nombre de secondes qui séparera deux controles de commandes externes. Si vous ne mettez pas de "s", c''est le nombre d'"unités de temps" à laisser entre deux contrôles de commandes externes. Si vous n'avez pas modifié la valeur de la durée de l'intervalle qui est par défaut de 60, ce nombre représente des minutes.

Note: en mettant cette valeur à -1, Nagios controlera les commandes externes aussi souvent que possible. Chaque fois que Nagios controle les commandes externes, il lit et traite toutes les commandes présentes dans le fichier de commandes avant de passer à d'autres tâches. Vous trouverz plus d'informations sur les commandes externes ici.

Fichier de commandes externes

Format : command_file=<nom_de_fichier>
Exemple : command_file=/usr/local/nagios/var/rw/nagios.cmd

C'est le fichier que Nagios lit à la recherche de commandes externes. Le CGI de commande écrit les commandes dans ce fichier. Des programmes tiers peuvent écrire dans ce fichier sous réserve qu'ils aient les droits d'accès comme il est décrit ici. Le fichier de commandes externes est implanté sous forme d'un tube nommé [named pipe] (FIFO), qui est créé quand Nagios démarre et supprimé lorsqu'il s'arrête. Pour plus d'informations sur les commandes externes, lisez ceci.

Fichier de commentaire

Format : comment_file=<nom_de_fichier>
Exemple : comment_file=/usr/local/nagios/var/comment.log

C'est le fichier utilisé par Nagios pour enregistrer les commentaires sur les services et les hôtes. Vous pouvez visualiser et ajouter des commentaires sur les services et les hôtes grâce au CGI d'informations complémentaires.

Fichier des temps d'indisponibilité des hotes et des services

Format : downtime_file=<nom_de_fichier>
Exemple : downtime_file=/usr/local/nagios/var/downtime.log

C'est le fichier utilisé par Nagios pour enregistrer les temps d'indisponibilité prévus pour les hotes et services.Vous pouvez visualiser et ajouter des commentaires sur les services et les hôtes grâce au CGI d'informations complémentaires.

Fichier verrou

Format : lock_file=<nom_de_fichier>
Exemple : lock_file=/tmp/nagios.lock

C'est l'emplacement du fichier verrou qu'utilise Nagios quand il est lancé en tant que démon (i.e. démarré avec l'argument -d). Ce fichier contient l'identifiant du processus (PID) de Nagios.

Option de mémorisation de l'état

Format : retain_state_information=<0/1>
Exemple : retain_state_information=1

Cette option determine si Nagios doit mémoriser l'état des hôtes et des services entre deux démarrages. Si vous activez cette option, vous devez donnez une valeur à la variable fichier de mémorisation de l'état. Une fois l'option activée, Nagios enregistrera toutes les informations concernant l'état des hôtes et des services avant de s'arréter (ou de redémarrer) et il relira les informations d'état préalablement enregistrées quand il redémarrera.

Fichier de mémorisation de l'état

Format : state_retention_file=<nom_de_fichier>
Exemple : state_retention_file=/usr/local/nagios/var/status.sav

C'est le fichier utilisé par Nagios pour mémoriser l'état des hôtes et des services entre les redémarrages. Au démarrage, Nagios positionnera l'état initial des services et des hôtes à partir des informations contenues dans ce fichier, puis commencera la supervision. Ce fichier est supprimé dès sa lecture effectuée. Pour que Nagios mémorise l'état des hôtes et des services, vous devez activer l'option de mémorisation de l'état.

Intervalle de mise à jour des états mémorisés

Format : retention_update_interval=<minutes>
Exemple : retention_update_interval=60

Cette variable détermine la fréquence (en minutes) à laquelle Nagios va automatiquement sauvegarder les données de mémorisation en situation normale. Si vous donnez une valeur de 0, Nagios ne sauvegardera pas les données mémorisées à intervalles réguliers, mais avant de s'arréter ou de redémarrer. Si vous avez désactivé la mémorisation des états (grâce à l'option retain_state_information), cette variable est sans effet.

Option d'utilisation des états du programme mémorisés

Format : use_retained_program_state=<0/1>
Exemple : use_retained_program_state=1

Cette option détermine si Nagios positionnera diverses variables d'état du programme à partir des valeurs enregistrées dans le fichier de mémorisation. Parmi ces variables d'état du programme, normalement sauvegardées par delà les redémarrages du programme si la mémorisation d'état est activée, on trouve les notifications , la détection d'oscillation, l'activation des gestionnaires d'évènements, l'exécution des contrôles de services, ou l'acceptation des contrôles de service passifs. Si vos n'avez pas activé la mémorisation d'état, cette option est sans effet.

Option de journalisation dans Syslog

Format : use_syslog=<0/1>
Exemple : use_syslog=1

Cette option détermine si les messages doivent être journalisés via l'utilitaire système Syslog. Les valeurs possibles sont :

Option de journalisation des notifications

Format : log_notifications=<0/1>
Exemple : log_notifications=1

Cette variable détermine si les messages de notification sont journalisés ou non. Si vous avez de nombreux contacts ou des problèmes fréquents sur les services, le fichier journal va rapidement grossir. Utilisez cette option pour éviter de journaliser les notifications faites aux contacts.

Option de journalisation de tentatives de contrôle de service

Format : log_service_retries=<0/1>
Exemple : log_service_retries=1

Cette option détermine si les tentatives répétées de contrôle d'un service sont journalisées. Ces tentatives ont lieu lorsqu'un service retourne un état différent de OK, mais que vous avez configuré Nagios pour essayer plus d'une fois avant de considérer cela comme une erreur. Les services dans cette situation sont dits en état "soft". La journalisation des tentatives de contrôle permet de déboguer Nagios ou de tester les gestionnaires d'événements.

Option de journalisation de tentatives de contrôle d'hôte

Format : log_host_retries=<0/1>
Exemple : log_host_retries=1

Cette option détermine si les tentatives répétées de contrôle d'un hôte sont journalisées. La journalisation des tentatives de contrôle permet de déboguer Nagios ou de tester les gestionnaires d'événements.

Option de journalisation des gestions d'événements

Format : log_event_handlers=<0/1>
Exemple : log_event_handlers=1

Cette option détermine si les gestions d'événements liés aux hôtes ou aux services sont journalisées. Les gestionnaires d'événements sont des commandes optionnelles qu'on peut lancer lors du changement d'état d'un hôte ou d'un service. La journalisation des gestion d'événements permet de déboguer Nagios ou de tester les scripts de gestion d'événements.

Option de journalisation des états initiaux

Format : log_initial_states=<0/1>
Exemple : log_initial_states=1

Cette variable détermine si Nagios forcera la journalisation de tous les états initiaux des hôtes et des services, même si leur état est OK. Les états initiaux ne sont normalement journalisés que s'il y a un problème lors du premier contrôle. Cette option peut se révéler utile si vous utilisez une application tierce qui lit le journal pour en tirer des statistiques à long terme pour les hotes et services.

Option de journalisation des commandes externes

Format : log_external_commands=<0/1>
Exemple : log_external_commands=1

Cette variable détermine si Nagios journalisera les commandes externes reçues via le fichier des commandes externes. Note : cette option ne détermine pas si les contrôles passifs de service (qui sont une variante des commandes externes) sont journalisés. Pour définir la journalisation des contrôles passifs de service, utilisez l'option de journalisation des contrôles passifs de service.

Option de journalisation des contrôles passifs de service

Format : log_passive_service_checks=<0/1>
Exemple : log_passive_service_checks=1

Cette variable détermine si Nagios journalisera les contrôles passifs de service reçues via le fichier de commandes externes. Si vous mettez en place un environnement de supervision réparti ou si vous souhaitez utiliser fréquemment un grand nombre de contrôles passifs, vous pouvez désactiver cette option pour éviter au journal de trop grossir.

Gestionnaire global des événements relatifs aux hôtes

Format : global_host_event_handler=<commande>
Exemple : global_host_event_handler=log-host-event-to-db

Cette option détermine un gestionnaire d'événement appelé à chaque changement d'état d'un hôte. Il s'exécute juste avant le gestionnaire d'événement particulier à l'hôte que vous avez précisé de manière optionnelle dans la définition de l'hôte. L'argument commande est le nom court d'une définition de commande qui se trouve dans votre fichier de définition des objets. Le temps d'exécution maximal de cette commande est déterminé par la variable event_handler_timeout. Vous trouverez plus d'informations sur les gestionnaires d'événements ici.

Gestionnaire global des événements relatifs aux services

Format : global_service_event_handler=<commande>
Exemple : global_service_event_handler=log-service-event-to-db

Cette option détermine un gestionnaire d'événement appelé à chaque changement d'état d'un service. Il s'exécute juste avant le gestionnaire d'événement particulier à l'hôte que vous avez précisé de manière optionnelle dans la définition du service. L'argument commande est le nom court d'une définition de commande qui se trouve dans votre fichier de définition des objets. Le temps d'exécution maximal de cette commande est déterminé par la variable event_handler_timeout. Vous trouverez plus d'informations sur les gestionnaires d'événements ici.

Temps de sommeil entre les contrôles

Format : sleep_time=<secondes>
Exemple : sleep_time=1

C'est le nombre de secondes pendant lequel Nagios va sommeiller avant de vérifier si le prochain contrôle de service en file d'attente doit être exécuté. Notez que Nagios ne s'endormira qu'après avoir "liquidé" les contrôles de services en retard dans la file.

Méthode de délai inter-contrôles

Format : inter_check_delay_method=<n/d/s/x.xx>
Exemple : inter_check_delay_method=s

Cette option détermine comment les contrôles de service sont initialement répartis dans la file d'attente. L'option de calcul "débrouillard" [smart] du délai (par défaut) demande à Nagios de calculer un intervalle moyen entre les contrôles et d'ordonnancer les contrôles initiaux de tous les services à cet intervalle, ce qui permet d'éviter les pics d'utilisation du processeur. Il n'est pas recommendé d'utiliser la méthode "sans délai" [no delay] à moins que vous ne vouliez tester la parallélisation des contrôles de service. En effet, cette méthode ordonnance toutes les contrôles en même temps. L'exécution de toutes les contrôles en parallèle va provoquer d'importants pics d'utilisation du processeur. Vous obtiendrez plus d'informations sur la façon dont cette variable affecte l'ordonnancement des contrôles de service ici. Ses valeurs possibles sont :

Facteur d'entrelacement des services

Format : service_interleave_factor=<s|x>
Exemple : service_interleave_factor=s

Cette variable détermine comment les contrôles de service sont entrelacés. L'entrelacement permet une distribution plus égale des contrôles de service, une charge réduite sur les hôtes distants, et une détection globalement plus rapide des problèmes liés aux hôtes. Avec l'introduction de la parallélisation des contrôles de service, les hôtes distants peuvent se retrouver bombardés de contrôles si l'entrelacement n'est pas activé. Ceci peut entrainer l'échec de contrôles ou des résultats incorrects si l'hôte distant est surchargé de requêtes. Mettre une valeur de 1 est équivalent à ne pas entrelacer les contrôles de service (c'est le mode de fonctionnement des versions de Nagios antérieures à la version 0.0.5). Mettez une valeur de s (débrouillard)[smart]) pour que le calcul du facteur d'entrelacement soit automatique, à moins que vous ayez une bonne raison de la changer. Le meilleur moyen de comprendre le fonctionnement du facteur d'entrelacement est d'observer le CGI d'état (vue detaillée) au moment où Nagios vient de démarrer. Vous verrez comment les contrôles sont faits au fur et à mesure que les résultats apparaissent. Vous trouverez plus d'informations sur l'entrelacement ici.

Nombre maximal de contrôles de services simultanés

Format : max_concurrent_checks=<maximum_de_contrôles>
Exemple : max_concurrent_checks=20

Cette option détermine le nombre maximal de contrôles de service pouvant tourner en parallèle à un instant donné. Une valeur de 1 empêche la parallélisation. Une valeur de 0 (par défaut) n'impose aucune restriction sur le nombre de contrôles simultanés. Vous ajusterez cette valeur en fonction des capacités de la machine sur laquelle tourne Nagios, car elle impacte directement la charge du système (processeur, mémoire, etc.). Vous trouverez plus d'informations sur le nombre de contrôles de services que vous devriez autoriser ici.

Fréquence de consolidation des services

Format : service_reaper_frequency=<fréquence_en_secondes>
Exemple : service_reaper_frequency=10

Cette option détermine la fréquence en secondes des événements de "consolidation" des services. Ces événement traitent les résultats des contrôles de service parallélisés dont l'exécution est terminée. Ces événements sont au coeur de la supervision dans Nagios.

Valeur de l'intervalle de temps

Format : interval_length=<secondes>
Exemple : interval_length=60

C'est le nombre de secondes que contient une "unité de temps" utilisée dans la file d'ordonnancement, les re-notifications, etc. Les "unités de temps" sont utilisées dans le fichier de configuration des hôtes pour déterminer la fréquence d'exécution des contrôles de service, la fréquence de re-notification d'un contact, etc.

Important : La valeur par défaut de cette variable est 60, ce qui veut dire qu'une "unité de temps" de 1 dans le fichier de configuration des hôtes vaut 60 secondes (1 minute). Je n'ai pas vraiment testé d'autres valeurs pour cette variable, donc vous la modifierez à vos propres risques !

Option de contrôle agressif des hôtes

Format : use_agressive_host_checking=<0/1>
Exemple : use_agressive_host_checking=0

Depuis la version 0.0.4, Nagios essaye d'être plus malin dans la façon et le moment de contrôler l'état des hôtes. En général, désactiver cette option permet à Nagios d'être un peu plus malin et de faire les contrôles plus vite. Activer cette option revient à ralentir le contrôle des hôtes, mais peut améliorer la sûreté de fonctionnement. Si vous voulez en savoir plus sur ce que fait exactement cette option, référez-vous au code source de nagios.c et cherchez la chaîne de caractères "use_agressive_host_checking" : j'ai ajouté là quelques commentaires [en anglais]. A moins que Nagios ne parvienne pas à détecter le rétablissement d'un de vos hôtes, je vous suggère de ne pas activer cette option.

Option de détection de l'oscillation [flap]

Format : enable_flap_detection=<0/1>
Exemple : enable_flap_detection=0

Cette option détermine si Nagios essaiera de détecter les hôtes et les services qui oscillent [ou "bagotent, yoyotent de la touffe" en bon argot]. L'oscillation apparaît lorsqu'un hôte ou un service change d'état trop fréquemment, causant l'émission d'un barrage de notifications. Quand Nagios détecte qu'un hôte ou un service oscille, il supprime temporairement les notifications pour cet hôte/service jusqu'à ce qu'il arrête d'osciller. La détection de l'oscillation est encore au stade expérimental, utilisez donc cette fonctionalité avec prudence ! Pour plus d'informations sur la détection et la gestion des oscillations , lisez ceci. Note : si vous avez activé la mémorisation d'état, Nagios ignorera cette option à son (re)démarrage et utilisera la dernière valeur connue (telle qu'elle est enregistrée dans le fichier de mémorisation des états), à moins que vous ne désactiviez l'option use_retained_program_state. Si vous voulez changer cette option alors que la mémorisation d'état est activée (ainsi que l'option use_retained_program_state), vous devrez passer par la commande externe appropriée ou l'interface web.

Seuil inférieur d'oscillation d'un service

Format : low_service_flap_threshold=<pourcentage>
Exemple : low_service_flap_threshold=25.0

Cette variable permet de donner le seuil inférieur pour la détection de l'oscillation d'un service. Pour plus d'informations sur la détection et la gestion des oscillations (et comment cette variable les affecte), lisez ceci.

Seuil supérieur d'oscillation d'un service

Format : high_service_flap_threshold=<pourcentage>
Exemple : high_service_flap_threshold=50.0

Cette variable permet de donner le seuil supérieur pour la détection de l'oscillation d'un service. Pour plus d'informations sur la détection et la gestion des oscillations (et comment cette variable les affecte), lisez ceci.

Seuil inférieur d'oscillation d'un hôte

Format : low_host_flap_threshold=<pourcentage>
Exemple : low_host_flap_threshold=25.0

Cette variable permet de donner le seuil inférieur pour la détection de l'oscillation d'un hôte. Pour plus d'informations sur la détection et la gestion des oscillations (et comment cette variable les affecte), lisez ceci.

Seuil supérieur d'oscillation d'un hôte

Format : high_host_flap_threshold=<pourcentage>
Exemple : high_host_flap_threshold=50.0

Cette variable permet de donner le seuil supérieur pour la détection de l'oscillation d'un hôte. Pour plus d'informations sur la détection et la gestion des oscillations (et comment cette variable les affecte), lisez ceci.

Option de dépendance "Soft" des services

Format : soft_state_dependencies=<0/1>
Exemple : soft_state_dependencies=0

Cette option détermine si Nagios utilisera les informations d'état "soft" des services lors du contrôle des dépendances de service. En temps normal, Nagios n'utilise que le dernier état "hard" du service lors du contrôle des dépendances. Si vous voulez utiliser le tout dernier état (que ce soit un état de type hard ou soft), activez cette option.

Dépassement de délai du contrôle de service

Format : service_check_timeout=<secondes>
Exemple : service_check_timeout=60

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner un contrôle de service.Si le contrôle dépasse cette limite, il est tué et un état CRITICAL est retourné. Une erreur de dépassement de délai est également journalisée.

Il existe la confusion la plus totale sur ce que cette option fait vraiment. Elle est là comme dernier rempart, pour tuer les plugin qui se comporte mal ou ne se sont pas terminés correctement. Il faut le positionner à une valeur haute (quelque chose comme 60s), de manière à ce que tout controle ait le temps de se terminer avant cette limite. Si le controle du service prend plus de temps pour s'exécuter, Nagios le tuera, pensant que c'est un processus fou.

Dépassement de délai du contrôle d'hôte

Format : host_check_timeout=<secondes>
Exemple : host_check_timeout=60

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner un contrôle d'hôte. Si le contrôle dépasse cette limite, il est tué et un état CRITICAL est retourné, et l'hôte sera supposé être dans l'état DOWN. Une erreur de dépassement de délai est également journalisée.

Il existe également la confusion la plus totale sur ce que cette option fait vraiment. Elle est là comme dernier rempart, pour tuer les plugin qui se comporte mal ou ne se sont pas terminés correctement. Il faut le positionner à une valeur haute (quelque chose comme 60s), de manière à ce que tout controle ait le temps de se terminer avant cette limite. Si le controle de l'hote prend plus de temps pour s'executer, Nagios le tuera, pensant que c'est un processus fou.

Dépassement de délai de controle du gestionnaire d'événement

Format : event_handler_timeout=<secondes>
Exemple : event_handler_timeout=60

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner un gestionnaire d'événement. Si un gestionnaire d'événement dépasse cette limite il sera tué et une alerte sera journalisée.

Il existe là aussi, comme précédemment, la confusion la plus totale sur ce que cette option fait vraiment. Elle est là comme dernier rempart, pour tuer les plugin qui se comporte mal ou ne se sont pas terminés correctement. Il faut le positionner à une valeur haute (quelque chose comme 60s), de manière à ce que tout controle ait le temps de se terminer avant cette limite. Si le controle du gestionnaire d'évènement prend plus de temps pour s'executer, Nagios le tuera, pensant que c'est un processus fou.

Dépassement de délai de notification

Format : notification_timeout=<secondes>
Exemple : notification_timeout=60

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner une commande de notification. Si une commande de notification dépasse cette limite elle sera tuée et une alerte sera journalisée.

Il existe la confusion la plus totale (NdT: toute ressemblance avec des phrases précédentes seraient purement intentionnelle :-) )sur ce que cette option fait vraiment. Elle est là comme dernier rempart, pour tuer les plugin qui se comporte mal ou ne se sont pas terminés correctement. Il faut le positionner à une valeur haute (quelque chose comme 60s), de manière à ce que tout controle ait le temps de se terminer avant cette limite. Si la notification prend plus de temps pour s'executer, Nagios la tuera, pensant que c'est un processus fou.

Dépassement de délai de la commande de remontée de contrôle de service

Format : ocsp_timeout=<secondes>
Exemple : ocsp_timeout=5

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner une commande de remontée de contrôle de service. Si une commande dépasse cette limite, elle sera tuée et une alerte sera journalisée.

Dépassement de délai de la commande de traitement des données liées aux performances

Format : perfdata_timeout=<secondes>
Exemple : perfdata_timeout=5

C'est le nombre maximal de secondes pendant lequel Nagios laissera tourner une commande de traitement des données liées aux performance d'un hôte ou de traitement des données liées aux performances d'un service. Si une commande dépasse cette limite, elle sera tuée et une alerte sera journalisée.

Option de remontée de contrôle de service

Format : obsess_over_services=<0/1>
Exemple : obsess_over_services=1

Cette variable détermine si Nagios remontera les résultats de contrôles de service et lancera la commande de remontée de contrôle de service que vous avez défini. Je sais que c'est un drôle de nom [en anglais "obsessive compulsive service processor"], mais c'est tout ce qui m'est venu à l'idée. Cette option est utile dans le cadre de la supervision répartie. Si vous ne faites pas de supervision répartie, n'activez pas cette option.

Commande de remontée de contrôle de service

Format : ocsp_command=<commande>
Exemple : ocsp_command=obsessive_service_handler

Cette option définit la commande à lancer après chaque contrôle de service,ce aui peut etre utile dans une supervision répartie. Elles est exécutée après les éventuelles commandes de gestion d'événement ou de notification. L'argument commande est le nom court d'une définition de commande que vous avez définie dans le fichier de configuration des hôtes. Cette option sert dans le cadre de la supervision répartie. Le temps d'exécution maximal de cette commande est déterminé par la variable ocsp_timeout. Vous trouverez plus d'informations sur la supervision répartie ici.

Option de traitement des données de performance

Format : process_performance_data=<0/1>
Exemple : process_performance_data=1

Cette valeur détermine si Nagios traitera les données liées aux performances des contrôles d'hôtes et de services.

Option de vérification des contrôles de services orphelins

Format : check_for_orphaned_services=<0/1>
Exemple : check_for_orphaned_services=0

Cette option vous permet d'activer ou désactiver la vérification des contrôles de service orphelins. Les contrôles de service orphelins sont des contrôles ayant été exécutés et supprimés de la file des évènements, mais dont les résultats n'ont pas été remontés depuis longtemps. Comme aucun résultat n'ont été remontés pour ce service, il n'est pas réordonnancé dans la file d'évènements. Cela peut causer l'arrêt des contrôles du service. Normalement, c'est un phénomène très rare - il peut se produire si un utilisateur ou un processus extérieurs ont tué le processus utilisé pour exécuter le contrôle de service. Si cette option est activée et que Nagios s'aperçoit qu'un résultat de contrôle de service particulier ne revient pas, il journalisera un message d'erreur et réordonnancera le contrôle de service. Si vous constatez que certains contrôles de service semblent n'être jamais réordonnancés, activez cette option et cherchez dans les journaux des messages concernant des services orphelins.

Option de controle de la validité des données d'un service

Format: check_service_freshness=<0/1>
Exemple: check_service_freshness=0

Cette option détemine si Nagios va controler ou non périodiquement la validité des données d'un service. L'activation de cette option aide à controler que les controles de services passifs sont reçus en temps et heure. On peut trouver plus d'informations sur cette option .

Intervalle de controle de la validité des données d'un service

Format: freshness_check_interval=<seconds>
Exemple: freshness_check_interval=60

Cette option détermine l'intervalle de temps entre deux controles de validité des données d'un service. Si vous avez désactivé ce service, avec l'option (de controle de validité des données d'un service), cette option n'a pas d'effet. Vous pouvez trouver plus d'informations sur ce service .

Date Format

Format: date_format=<option>
Exemple: date_format=us

Cette option spécifie le format de date que Nagios utilisera dans l'interface web. Les options possibles sont :

Option Output Format Sample Output
us MM/DD/YYYY HH:MM:SS 06/30/2002 03:15:00
euro DD/MM/YYYY HH:MM:SS 30/06/2002 03:15:00
iso8601 YYYY-MM-DD HH:MM:SS 2002-06-30 03:15:00
strict-iso8601 YYYY-MM-DDTHH:MM:SS 2002-06-30T03:15:00

Caractères illégaux dans les noms d'objets

Format: illegal_object_name_chars=<chars...>
Exemple: illegal_object_name_chars=`~!$%^&*"|'<>?,()=

Cette option vous permet de spécifier quels sont les caractères illégaux dans les noms d'objets, tels que hotes, services et autres. Nagios vous autorisera la plupart des caractères dans les définitions d'objets, mais je recommande de ne pas utiliser les caractères ci-dessus. Le faire est s'exposer à des problèmes dans l'interface web, les notifications de commandes, etc.

Caractères illégaux dans la sortie des macros

Format: illegal_macro_output_chars=<chars...>
Exemple: illegal_macro_output_chars=`~$^&"|'<>

Cette option vous permet de spécifier les caractères illégaux qui seront filtrés dans les macros, avant qu'elles soient utilisées dans les notifications, les gestionnaires d'évènements et autres commandes. Ceci n'affecte pas les macros utilisées dans les controles des services ou des hotes. Vous pouvez choisir de ne pas filtrer les caractères donnés en exemple ci-dessus, mais je ne vous recommande pas de le faire. Quelques uns d'entre eux sont interprètés par le shell ( par exemple, le ` ) et peuvent poser des problèmes de sécurité. Les macros suivantes sont débarassées des caractères spécifiés:

$OUTPUT$, $PERFDATA$

Adresse email de l'administrateur

Format : admin_email=<adresse_email>
Exemple : admin_email=root

C'est l'adresse mail de l'administrateur local de la machine (i.e. celle sur laquelle Nagios tourne). Cette valeur peut être utilisée dans les commandes de notification grâce à la macro $ADMINEMAIL$.

Pager de l'administrateur

Format : admin_pager=<numéro_de_pager_ou_passerelle_pager_email>
Exemple : admin_pager=pageroot@pagenet.com

C'est le numéro du pager (ou la passerelle pager-email) de l'administrateur de la machine locale (i.e. celle sur laquelle Nagios tourne). Le numéro ou l'adresse de pager peut être utilisé dans les commandes de notification grâce à la macro $ADMINPAGER$.