Emplacement et organisation des fichiers de logs

Les fichiers de logs des démons Shinken sont placés dans /var/log/shinken.


Chaque instance de démon Shinken possède dans ce dossier son fichier de log.

Par défaut, les démons présents dans l'installation Shinken possèdent les fichiers de logs suivants:

  • arbiterd.log
  • schedulerd.log
  • receiverd.log
  • reactionnerd.log
  • pollerd.log
  • brokerd.log
  • synchronizerd.log

Lorsque d'autres démons sont ajoutés sur la même machine, les fichiers de logs sont nommés de la façon suivante:

<TYPE_DEMON>d-<ID_DEMON>.log

Par exemple, un scheduler supplémentaire avec l'id 1 aura le fichier de log suivant:

  • /var/log/shinken/schedulerd-1.log

Logs de debug

Les démons Shinken peuvent être démarrés en mode debug pour avoir des logs plus verbeux.

Plusieurs commandes permettent de redémarrer les démons en mode debug:

  • Redémarrer tous les démons en mode debug (option -d)

    service shinken -d restart


  • Redémarrer tous les démons d'un type en mode debug.

    service shinken-<type_demon> -d restart

    "<type_demon>" correspond au type du démon à redémarrer, et est une valeur parmis les suivantes: arbiter, scheduler, poller, broker, reactionner, receiver, synchronizer.
    Par exemple, pour un Scheduler, la commande est la suivante:

    service shinken-scheduler -d restart


  • Redémarrer une seule instance de démon en mode debug.

    service shinken-<type_demon> -d --id <id_demon> restart

    L'id du démon peut être trouvée à l'aide de la commande shinken-daemons-list.

Un démon démarré en mode debug envoie ses logs dans un fichier différent, placé dans /var/log/shinken et nommé comme suivant:

<type_demon>d-<id_demon>.debug.log

Pour un scheduler avec l'id 2, le fichier de log en mode debug correspondant est le suivant:

  • /var/log/shinken/schedulerd-3.debug.log

Réglage du niveau de log par défaut

Dans les fichiers de logs Shinken, chaque entrée possède une des 4 priorités suivantes:

  • DEBUG
  • INFO
  • WARNING
  • CRITICAL

A l'installation, ou lorsqu'un nouveau démon est créé, le niveau de log par défaut est INFO.

Ce niveau de log par défaut peut être modifié dans le fichier .ini du démon concerné, via le paramètre log_level:

 # accepted log level values= DEBUG,INFO,WARNING,ERROR,CRITICAL
 log_level=INFO


Chaque instance de démon possède un fichier .ini placé dans /etc/shinken/daemons. Ce fichier est nommé selon le type de démon et son id:

<type_demon>d-<id_demon>.ini

Comme pour les fichiers de logs, les démons préinstallés n'ont pas l'id dans le nom du fichier .ini (pour rester compatible avec les anciennes versions). Les fichiers .ini par défaut sont donc les suivants:

  • pollerd.ini
  • brokerd.ini
  • schedulerd.ini
  • reactionnerd.ini
  • receiverd.ini


Le Synchronizer et l'Arbiter sont des démons centraux avec des roles particuliers par rapport aux autres démons. Ils ont pour particularité d'avoir des fichiers .ini différents des autres démons:

  • Arbiter: /etc/shinken/shinken.cfg
  • Synchronizer: /etc/shinken/synchronizer.cfg

Agrégation des logs

Les logs de tous les démons sont agrégés dans 2 fichiers:

  • /var/log/shinken/shinken.log: Les logs présents dans le fichier sont les mêmes que ceux contenus dans l'ensemble des fichiers de logs de tous les démons, rassemblés.
  • /var/log/shinken/nagios-export.log: Agrégation des fichiers de logs contenant seulement les données utiles à la supervision (alertes de résultats de checks par exemple). Ne contient pas les avertissements et autres messages propres à Shinken. Ce fichier est utile notamment pour les outils externes qui se basent sur les logs de Shinken.

Cette agrégation est effectuée par le module Simple-log activé par défaut sur le Broker.

Rotation des logs

Rotation des logs des démons

Les fichiers de logs des démons contiennent seulement les logs de la journée en cours. A chaque nouvelle journée, les démons vident leur fichier de logs après avoir sauvegardé son contenu dans un fichier de sauvegarde.

Chaque fichier de sauvegarde correspond alors à une journée de logs. Pour ne pas consommer trop d'espace disque, seulement les 5 derniers fichiers sont conservés.


Voici l'exemple de l'état du dossier /var/log/shinken après plusieurs jours en activité:


Rotation des logs agrégés

Les logs agrégés ont un comportement différent au niveau de leur archivage puisqu'ils ne sont pas gérés par les démons mais par le module Simple-log.

Ces fichiers sont sauvegardés dans le dossier /var/log/shinken/archives, toujours en organisant les logs en placant une journée par fichier.

A la différence des fichiers de logs des démons ou seulement les 5 dernières journées sont conservées, les logs agrégés ne sont pas supprimés.

Informations utiles contenues dans les logs

Chaque démon a un rôle particulier. Par conséquent, chaque fichier de logs possède des informations particulières sur la supervision. Cette section liste les informations utiles qui peuvent être trouvées dans chaque fichier de log.

Arbiter

Broker

Poller

Reactionner

Receiver

Scheduler

Synchronizer

arbiterd.log

Dans ce fichier, vous trouverez tous les événements liés à l'architecture de Shinken Enterprise, car l'arbiter est utilisé pour vérifier et distribuer la configuration aux autres démons (sauf le Synchronizer ).

En cas d'erreur : 

 

Très utile dans une configuration complexe avec des démons en spare , avec visualisation des des événements en haute disponibilité 

 

brokerd.log

Dans ce fichier, vous trouverez tous les éléments liés à la gestion des données (Broker utilisé pour exporter et gérer les données du scheduler) .

Dans les logs, vous trouverez les informations générés quand une erreur intervient dans la connexion entre démons. 

  • schedulers
  • pollers
  • reactionners
  • receivers

pollerd.log

Dans ce fichier, vous trouverez tous les événements liés au checks actif, car le poller est le deamon qui execute les checks actif.

Vous pouvez allez dans ce fichier pour trouver la cause de status d'élément non mis à jour,
si il y a un probleme de communication entre le poller et le scheduler ou si le poller n'a pas le plugin par exemple.

reactionnerd.log

Dans ce fichier, vous trouverez tous les événements liés à la communication ( mail, RSS, ...  ) 

receiverd.log

Dans ce fichier, vous trouverez tous les événements liés aux checks passifs .

schedulerd.log

Dans ce fichier, vous trouverez tous les événements relatifs aux checks (distribution, retours, ...).

Vous visualiserez tous les retours de checks :

 

synchronizerd.log

Dans ce fichier, vous trouverez tous les éléments liés à la configuration.