Vous êtes ici:

Menu


Débogage Centreon Broker

Stacks Image 5247
Cette page sera consacrée aux méthodes pour contrôler le bon fonctionnement de notre broker préféré. Nous partirons du principe que nous sommes sur une installation standalone sous Debian. Nous avons un seul service, il s'agit de check_centreon_ping.

Les différents points de contrôles

principe_broker

Fonctionnement de Centreon-Broker

Ci-dessus, voici une représentation simpliste des différents flux intervenant dans Centreon-Broker. Chaque numéro correspond à un point de contrôle pour vérifier notre installation, vous pouvez survolez l'image avec votre souris et cliquez sur le numéro désiré. Voici la liste chronologique des actions que vous pouvez réaliser pour vous aider dans vos éventuels diagnostics.
 

1 - vérification du fonctionnement du plugin

Pour vérifier le fonctionnement d'un plugin comme check_centreon_ping, nous utiliserons tcpdump. Nous devons vérifier les flux icmp entre le serveur de supervision (ou poller) et l'hôte supervisé. Afin d'obtenir un résultat plus rapide, il suffit de cocher le service voulu et de sélectionner l'action Schedule immédiate check (forced). Pour vérifier sur la boucle locale TCP/IP, saisir la ligne suivante :
tcpdump -i lo icmp
Stacks Image 5432
Exemple avec la boucle lo
Pour vérifier un hôte distant, nous devrons connaître le nom de la carte réseau (en général eth0 sur debian). Afin de limiter la recherche, nous appliquerons des filtres source et destination. Pour vérifier dans le sens Supervision vers Hôte, saisir la ligne suivante :
tcpdump -i eth0 src [IP Centreon] and dst [IP hote distant] and icmp
Stacks Image 5435
Exemple avec eth0, sens Centreon vers Hôte
Pour vérifier dans les deux sens, saisir la ligne suivante :
tcpdump -i eth0 host [IP Centreon] and host [IP hote distant] and icmp
Stacks Image 5438
Exemple avec eth0
Pour vérifier le bon paramétrage d’un plugin, vous avez la possibilité d’utiliser le script verif_cmd décrit dans cet article. Celui-ci, utilisé conjointement avec Centreon-Clapi, vous permet de connaître la ligne de commande qui sera exécutée.
 

2 - vérification du fonctionnement de Centreon-Engine

Nous pouvons vérifier le bon fonctionnement de Centreon-Engine en premier lieu sur l'interface de Centreon.
Stacks Image 5502
Vérification du fonctionnement de Centreon-engine avec Centreon-Web < 2.7.x
Stacks Image 500170
Vérification du fonctionnement de Centreon-engine avec Centreon-Web > 2.7.x
Stacks Image 500179
Dysfonctionnement d’un poller distant.
Puis aussi en vérifiant le fichier de log et/ou debug s'il est activé.
tail -f /var/log/centreon-engine/centengine.log
 

3 - vérification du chargement du module cbmod

Vérifier le chargement du module au démarrage de Centreon-engine. Relancez Centreon-Engine en surveillant le fichier de log sur une autre terminal SSH.
Premier terminal
service centengine restart
Deuxième terminal
tail -f /var/log/centreon-engine/centengine.log
Vérifier le chargement du module au démarrage de Centreon-engine. Relancez Centreon-Engine. Vous devriez retrouver cette ligne dans le fichier de log :
Event broker module '/usr/local/centreon-broker/lib/cbmod.so' initialized successfully.
Stacks Image 5441
Chargement du module cbmod
 

4 - vérification des logs de Centreon-Broker

Dans une configuration standard, les logs du broker sont situés dans le dossier /var/log/centreon-broker. les processus cdb doivent pouvoir créer des fichiers de log, la particularité venant du processus cbmod lancé par le moteur de supervision. Le user de centreon-engine doit lui aussi pouvoir écrire un fichier de log dans ce dossier. Voici quelques exemples de vérifications de log :
module cbmod
tail -f /var/log/centreon-broker/central-module-master.log
module cdb-central-broker
tail -f /var/log/centreon-broker/central-broker-master.log
module cdb-central-rrd
tail -f /var/log/centreon-broker/central-rrd-master.log
Pour obtenir plus ou moins d'informations dans ces logs, vous devrez régler les niveaux de détails dans la configuration du broker dans l'interface Centreon (onglet Logger de chaque module).

4.1 - exemples du module central-module-master (cbmod)

Voici ci-dessous la configuration par défaut du fichier de log.
Stacks Image 5408
configuration par défaut
Vous avez la possibilité d'ajouter ou non des informations avec trois niveaux de détail (Base, Détaillé, très détaillé). Attention, lorsque vous déboguez, Centreon-Broker étant très verbeux, je vous conseille de limiter la taille du fichier de log ou d'utiliser un mécanisme de rotation de log. Ci-dessous, un tableau indiquant les informations que vous pouvez afficher avec les différents réglages avec le module cbmod. N'oubliez pas de recharger votre configuration à chaque modification.
Configuration des Logs du module cbmod
Base Detailled Very detailled
Configuration messages Informations essentielles liées à la configuration Plus de détail sur la configuration statistique et sur "endpoint applier" idem
Debug messages affichage création output, input logs très verbeux, chargement des modules, activités du module NDO logs très verbeux, chargement des modules, activités du module NDO, taille fichier retention
Error messages affichage erreurs affichages erreurs callbacks idem
Informational messages information création fichier rétention très verbeux, affichage information chargement modules, activités NDO idem, affichage création des macros personnalisées
 

5 - vérification des flux TCP-IP de Centreon-Broker

C'est la partie la plus délicate dans le fonctionnement de Centreon-Broker. Nous utilisons des flux TCP pour communiquer entre les différents modules. Assurez-vous que les ports utilisés ne rentrent pas en conflit avec d'autres applications. Généralement, nous utiliserons les ports entre 5667 et 5670. Les modules travaillent en client-serveur, c'est-à-dire qu'un module écoute le port (serveur) tandis que le l'autre émet (client). Avec la commande netstat, vous pouvez lister les communications établies (ETABLISHED) et les ports en écoute (LISTEN). Voici un exemple de commande filtrant les flux TCP ayant la chaine 56 (ce qui correspond en général au port utilisé pour Centreon-Broker.
netstat -an | grep ^tcp | grep 56
Vous obtiendrez, par exemple ce résultat :
tcp        0      0 0.0.0.0:5669            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:5670            0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:5670          127.0.0.1:50993         ESTABLISHED
tcp        0      0 127.0.0.1:50993         127.0.0.1:5670          ESTABLISHED
tcp        0      0 127.0.0.1:5669          127.0.0.1:40067         ESTABLISHED
tcp        0      0 127.0.0.1:40067         127.0.0.1:5669          ESTABLISHED
Nous pouvons utiliser tcpdump pour vérifier s'il y a effectivement des informations circulant entre le moteur et le broker. Dans l'exemple ci-dessous, nous vérifions le flux entrant dans le module cdb-central-broker. Comme vous l'aurez constaté, il s'agit d'une installation standalone avec le poller communicant par la boucle locale lo.
tcpdump -i lo tcp dst port 5669
Nous obtenons, les trames suivantes (données pour l'exemple), preuve qu'il y a bien un traffic entre le moteur et le broker.
16:57:20.925661 IP localhost.40069 > localhost.5669: Flags [P.], seq 13764:13913, ack 1, win 1025, options [nop,nop,TS val 28384352 ecr 28383101], length 149
16:57:20.928305 IP localhost.40069 > localhost.5669: Flags [P.], seq 13913:14395, ack 1, win 1025, options [nop,nop,TS val 28384352 ecr 28384352], length 482
16:57:20.928424 IP localhost.40069 > localhost.5669: Flags [P.], seq 14395:14877, ack 1, win 1025, options [nop,nop,TS val 28384352 ecr 28384352], length 482
16:57:21.928956 IP localhost.40069 > localhost.5669: Flags [P.], seq 14877:15026, ack 1, win 1025, options [nop,nop,TS val 28384603 ecr 28384352], length 149
16:57:26.933568 IP localhost.40069 > localhost.5669: Flags [P.], seq 15026:15175, ack 1, win 1025, options [nop,nop,TS val 28385854 ecr 28384603], length 149
Admettons, maintenant, que vous vous êtes trompé dans la configuration TCP du module cbmod. Mais si, c'est possible :-) vous avez mis 5662 au lieu de 5669. la commande précédente n'affichera rien. Si vous lister les informations sortantes du modules cbmod, vous afficherez des trames mais de longueur vide preuve qu'il n'y a pas d'accusé de réception.
liste le flux sans succès
tcpdump -i lo tcp dst port 5669
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on lo, link-type EN10MB (Ethernet), capture size 65535 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel
liste le flux sortant, trame vide (length = 0)
tcpdump -i lo tcp src port 5662
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on lo, link-type EN10MB (Ethernet), capture size 65535 bytes
17:00:41.678100 IP localhost.5662 > localhost.53443: Flags [R.], seq 0, ack 538189214, win 0, length 0
17:00:41.678256 IP localhost.5662 > localhost.53444: Flags [R.], seq 0, ack 4201357894, win 0, length 0
17:01:11.705533 IP localhost.5662 > localhost.53445: Flags [R.], seq 0, ack 527048862, win 0, length 0
17:01:11.705653 IP localhost.5662 > localhost.53446: Flags [R.], seq 0, ack 1344875028, win 0, length 0
Le mécanisme sera le même pour le flux entre le module cdb-central-broker et cdb-central-rrd. Précision, cette méthode de vérification ne vérifie que le protocole tcp, pour connaître le type d'information qui véhicule dans ces trames, nous regarderons cela au niveau des logs (voir point 4)
 

6 - vérification des flux Mysql

Premier point à vérifier, la connectivité de Centreon-Broker vers la base centreon_storage. On peut utiliser la commande suivante.
Centreon-Broker ne fonctionne pas
mysqladmin -u root -p[mot de passe] status processlist
Résultat
Uptime: 1077123  Threads: 11  Questions: 2398234  Slow queries: 0  Opens: 750  Flush tables: 2  Open tables: 400  
Queries per second avg: 2.226
+-------+----------+-----------+----------+---------+------+-------+------------------+----------+
| Id    | User     | Host      | db       | Command | Time | State | Info             | Progress |
+-------+----------+-----------+----------+---------+------+-------+------------------+----------+
| 61042 | centreon | localhost | centreon | Sleep   | 2    |       |                  | 0.000    |
| 61063 | centreon | localhost | centreon | Sleep   | 210  |       |                  | 0.000    |
| 61068 | centreon | localhost | centreon | Sleep   | 170  |       |                  | 0.000    |
| 61115 | centreon | localhost | centreon | Sleep   | 101  |       |                  | 0.000    |
| 61145 | centreon | localhost | centreon | Sleep   | 49   |       |                  | 0.000    |
| 61148 | centreon | localhost | centreon | Sleep   | 118  |       |                  | 0.000    |
| 61156 | centreon | localhost | centreon | Sleep   | 136  |       |                  | 0.000    |
| 61172 | centreon | localhost | centreon | Sleep   | 12   |       |                  | 0.000    |
| 61279 | centreon | localhost | centreon | Sleep   | 194  |       |                  | 0.000    |
| 61304 | centreon | localhost | centreon | Sleep   | 30   |       |                  | 0.000    |
| 62179 | root     | localhost |          | Query   | 0    |       | show processlist | 0.000    |
+-------+----------+-----------+----------+---------+------+-------+------------------+----------+
Centreon-Broker fonctionne
mysqladmin -u root -p[mot de passe] status processlist
Résultat
Uptime: 1077133  Threads: 13  Questions: 2398424  Slow queries: 0  Opens: 750  Flush tables: 2  Open tables: 400  
Queries per second avg: 2.226
+-------+----------+-----------+------------------+---------+------+-------+------------------+----------+
| Id    | User     | Host      | db               | Command | Time | State | Info             | Progress |
+-------+----------+-----------+------------------+---------+------+-------+------------------+----------+
| 61042 | centreon | localhost | centreon         | Sleep   | 12   |       |                  | 0.000    |
| 61063 | centreon | localhost | centreon         | Sleep   | 7    |       |                  | 0.000    |
| 61068 | centreon | localhost | centreon         | Sleep   | 180  |       |                  | 0.000    |
| 61115 | centreon | localhost | centreon         | Sleep   | 111  |       |                  | 0.000    |
| 61145 | centreon | localhost | centreon         | Sleep   | 59   |       |                  | 0.000    |
| 61148 | centreon | localhost | centreon         | Sleep   | 128  |       |                  | 0.000    |
| 61156 | centreon | localhost | centreon         | Sleep   | 146  |       |                  | 0.000    |
| 61172 | centreon | localhost | centreon         | Sleep   | 22   |       |                  | 0.000    |
| 61279 | centreon | localhost | centreon         | Sleep   | 204  |       |                  | 0.000    |
| 61304 | centreon | localhost | centreon         | Sleep   | 40   |       |                  | 0.000    |
| 62182 | centreon | localhost | centreon_storage | Sleep   | 1    |       |                  | 0.000    |
| 62183 | centreon | localhost | centreon_storage | Sleep   | 1    |       |                  | 0.000    |
| 62188 | root     | localhost |                  | Query   | 0    |       | show processlist | 0.000    |
+-------+----------+-----------+------------------+---------+------+-------+------------------+----------+
Il y a deux process sur la base centreon_storage
Deuxième point, utiliser les logs comme indiqué au point 4. Le fichier de log à utiliser sera le fichier central-broker-master.log correspondant au module cbd-central-broker du schéma. Les logs ci-dessous correspondent à l'insertion des événements.
[1383320467] info: SQL: committing transaction
[1383320467] info: SQL: processing instance status event (id: 1, last alive: 1383320467)
[1383320469] info: SQL: committing transaction
[1383320483] info: SQL: processing host check event (host: 21, command: /usr/local/plugins/libexec/check_icmp -H 172.16.209.221 -w 3000.0,80% -c 5000.0,100% -p 1)
[1383320483] info: SQL: committing transaction
[1383320487] info: SQL: committing transaction
[1383320488] info: SQL: processing host status event (id: 21, last check: 1383320483, state (0, 1))
[1383320488] info: SQL: processing host status event (id: 21, last check: 1383320483, state (0, 1))
Les logs ci-dessous correspondent à l'insertion des données de performances
[1383320988] info: storage: updating metric 40 of (37, rta) (unit: ms, warning: 200.000000, critical: 400.000000, min: 0.000000, max: nan)
[1383320988] info: storage: updating metric 41 of (37, pl) (unit: %, warning: 20.000000, critical: 50.000000, min: nan, max: nan)
[1383320988] info: storage: updating metric 42 of (37, rtmax) (unit: ms, warning: nan, critical: nan, min: nan, max: nan)
[1383320988] info: storage: updating metric 43 of (37, rtmin) (unit: ms, warning: nan, critical: nan, min: nan, max: nan)
 

7 - vérification des process cbd

Dans notre configuration, nous devrions avoir deux processus cbd fonctionnant en mode deamon. Pour afficher ces processus, la commande ps nous est très utile. voici un exemple :
affichage de tous les processus cbd
ps aux | grep cbd
résultat
6002 17389 0.1 1.9 105740 10148 ? Sl 04:29 0:13 /usr/local/centreon-broker/bin/cbd /usr/local/centreon-broker/etc/central-broker.xml
6002 17412 0.1 1.6 54640 8404 ? Sl 04:29 0:11 /usr/local/centreon-broker/bin/cbd /usr/local/centreon-broker/etc/central-rrd.xml
root 20879 0.0 0.1 3324 828 pts/1 S+ 07:26 0:00 grep cbd
Si vous constatez qu'il vous manque un processus alors que le service cvd est bien démarré, vérifiez le fichier master.run se trouvant dans le dossier etc de configuration du broker. Celui-ci permet de lancer ou non les différents processus cbd.
cat /usr/local/centreon-broker/etc/master.run 
## This file define the Centreon Broker daemons to start
# Example :
# central-cbd	central-cbd.xml	y	y
# central-rrd	central-rdd.xml	y	n
#
# The first line the daemon central-cbd is started with start action from
# /etc/init.d/cbd and it's reload by action reload of init script
#
# The second line the daemon central-rrd is started but it is not reload by
# action in /etc/cbd reload
#
#
# daemon_name	daemon_config	running		reload
central-broker	central-broker.xml	y	y
central-rrd	central-rrd.xml	y	y
Dans le cas ci-dessus, tous les processus seront lancés au démarrage et au rechargement de la configuration.

7.1 - rechargement de la configuration

Un point important à vérifier est le rechargement du broker lors d'un changement de configuration de votre supervision. Centreon utilise le mécanisme de sudo, un moyen très simple de vérifier son bon fonctionnement est de visualiser le fichier /var/log/auth.log
tail -f /var/log/auth.log
Après un rechargement de la configuration, vous devriez voir ces lignes.
Oct 31 07:37:48 centreon240 sudo: www-data : TTY=unknown ; PWD=/usr/local/centreon/www ; USER=root ; COMMAND=/etc/init.d/cbd reload
Oct 31 07:37:48 centreon240 sudo: www-data : TTY=unknown ; PWD=/usr/local/centreon/www ; USER=root ; COMMAND=/etc/init.d/centengine restart
Oct 31 07:37:51 centreon240 su[21151]: Successful su for centreon-engine by root
Oct 31 07:37:51 centreon240 su[21151]: + ??? root:centreon-engine
Oct 31 07:37:51 centreon240 su[21151]: pam_unix(su:session): session opened for user centreon-engine by (uid=0)
Oct 31 07:37:51 centreon240 su[21151]: pam_unix(su:session): session closed for user centreon-engine
Oct 31 07:37:51 centreon240 su[21156]: Successful su for centreon-engine by root
Oct 31 07:37:51 centreon240 su[21156]: + ??? root:centreon-engine
Oct 31 07:37:51 centreon240 su[21156]: pam_unix(su:session): session opened for user centreon-engine by (uid=0)
Oct 31 07:37:51 centreon240 su[21156]: pam_unix(su:session): session closed for user centreon-engine
 

8 - vérification du chargement dans la base - événements

Le module cbd-central-broker comprend deux connexions MySQL. La première enregistre tous les événements de notre supervision. Dans notre exemple, il s'agit de notre service ping avec l'hôte central. Nous partirons de la création de l'hôte. Pour visualiser les événements, il faut paramétrer l'affichage des logs au maximum pour le module central-broker-master. Voici les logs de création de l'hôte et de son service dans la base centreon_storage. Les données relatifs à l'Hôte vont être stockées dans la table hosts et les services dans la table services.
tail -f /var/log/centreon-broker/central-broker-master.log
Création de l'hôte et de son service
[1384340300] [0x9946b40] info:    SQL: processing host event (instance: 1, id: 25, name: central)
.....
[1384340300] [0x9946b40] info:    SQL: processing service event (host id: 25, service_id: 46, description: Ping)
Lancement de la vérification du service

[1384340323] [0x9946b40] info: SQL: processing service check event (host: 25, service: 46, command: /usr/local/plugins/libexec/check_icmp -H 172.16.209.221 -n 3 -w 200,20% -c 400,50%)

Ajout des données de statut à la suite d'une vérification

[1384340324] [0x9946b40] info: SQL: processing service status event (host: 25, service: 46, last check: 1384340323, state (4, 1))

Stacks Image 5691
Tables hôte et service dans centreon_storage
 

9 - vérification du chargement dans la base - données de performance

Le service ping autorise les données de performance. Le broker va stocker ses données dans 3 tables de la table centreon_storage. La table index_data fait le lien entre les hôtes et services avec les métriques de données de performances. Les métriques seront stockés dans la table metrics puis les valeurs de ses métriques dans la table data_bin
tail -f /var/log/centreon-broker/central-broker-master.log
Création de la relation hôtes/services - métrique
[1384340323] [0x99a22c8] debug:   storage: processing service status event
[1384340323] [0x99a22c8] debug:   storage: found index 13 of (25, 46) in cache
[1384340323] [0x99a22c8] debug:   storage: generating status event for (25, 46) of index 13
Création des métriques

[1384340324] [0x99a22c8] debug: storage: processing service status event

[1384340324] [0x99a22c8] debug: storage: found index 13 of (25, 46) in cache

[1384340324] [0x99a22c8] debug: storage: generating status event for (25, 46) of index 13

[1384340324] [0x99a22c8] debug: storage: parsing perfdata string 'rta=0.019ms;200.000;400.000;0; pl=0%;20;50;; rtmax=0.041ms;;;; rtmin=0.007ms;;;;'

[1384340324] [0x99a22c8] debug: storage: got new perfdata (name=rta, value=0.019000, unit=ms, warning=200.000000, critical=400.000000, min=0.000000, max=nan)

[1384340324] [0x99a22c8] debug: storage: parsing perfdata string 'pl=0%;20;50;; rtmax=0.041ms;;;; rtmin=0.007ms;;;;'

[1384340324] [0x99a22c8] debug: storage: got new perfdata (name=pl, value=0.000000, unit=%, warning=20.000000, critical=50.000000, min=nan, max=nan)

[1384340324] [0x99a22c8] debug: storage: parsing perfdata string 'rtmax=0.041ms;;;; rtmin=0.007ms;;;;'

[1384340324] [0x99a22c8] debug: storage: got new perfdata (name=rtmax, value=0.041000, unit=ms, warning=nan, critical=nan, min=nan, max=nan)

[1384340324] [0x99a22c8] debug: storage: parsing perfdata string 'rtmin=0.007ms;;;;'

[1384340324] [0x99a22c8] debug: storage: got new perfdata (name=rtmin, value=0.007000, unit=ms, warning=nan, critical=nan, min=nan, max=nan)

[1384340324] [0x99a22c8] debug: storage: creating new metric for (13, rta)

..........

[1384340324] [0x99a22c8] info: storage: new metric 52 for (13, rta)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 52, ctime: 1384340323, value: 0.019000, status: 4)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: creating new metric for (13, pl)

..........

[1384340324] [0x99a22c8] info: storage: new metric 53 for (13, pl)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 53, ctime: 1384340323, value: 0.000000, status: 4)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: creating new metric for (13, rtmax)

.........

[1384340324] [0x99a22c8] info: storage: new metric 54 for (13, rtmax)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 54, ctime: 1384340323, value: 0.041000, status: 4)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: creating new metric for (13, rtmin)

........

[1384340324] [0x99a22c8] info: storage: new metric 55 for (13, rtmin)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 55, ctime: 1384340323, value: 0.007000, status: 4)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: current transaction has 2 pending queries

Mise à jour des métriques

[1384340324] [0x99a22c8] debug: storage: found metric 52 of (13, rta) in cache

[1384340324] [0x99a22c8] info: storage: updating metric 52 of (13, rta) (unit: ms, warning: 200.000000, critical: 400.000000, min: 0.000000, max: nan)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 52, ctime: 1384340323, value: 0.019000, status: 0)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: found metric 53 of (13, pl) in cache

[1384340324] [0x99a22c8] info: storage: updating metric 53 of (13, pl) (unit: %, warning: 20.000000, critical: 50.000000, min: nan, max: nan)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 53, ctime: 1384340323, value: 0.000000, status: 0)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: found metric 54 of (13, rtmax) in cache

[1384340324] [0x99a22c8] info: storage: updating metric 54 of (13, rtmax) (unit: ms, warning: nan, critical: nan, min: nan, max: nan)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 54, ctime: 1384340323, value: 0.041000, status: 0)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

[1384340324] [0x99a22c8] debug: storage: found metric 55 of (13, rtmin) in cache

[1384340324] [0x99a22c8] info: storage: updating metric 55 of (13, rtmin) (unit: ms, warning: nan, critical: nan, min: nan, max: nan)

[1384340324] [0x99a22c8] debug: storage: inserting perfdata in data_bin (metric: 55, ctime: 1384340323, value: 0.007000, status: 0)

[1384340324] [0x99a22c8] debug: storage: generating perfdata event

Stacks Image 5694
Chargement des données de performance dans centreon_storage
 

10 - vérification des fichiers RRD

Pour vérifier le bon fonctionnement du module cbd-central-rdd, nous utiliserons les fichiers de log. Afin d'avoir des informations pertinentes, paramétrez very detailled et sélectionnez Debug Messages. Attention, le fichier de log va augmenter très rapidement. Dans notre exemple d'un service ping, lors de la première requête, le module doit créer le fichier status contenant le graphe et les quatre métriques correspondant aux données de performances. ci-joint les logs que vous devriez avoir.
La ligne de commande
tail -f /var/log/centreon-broker/central-master-rrd.log
Un extrait des logs, création d'un graphe et ses métriques
[1383720951] debug:   RRD: new status data for index 39 (0) 
[1383720951] debug:   RRD: updating file '/var/lib/centreon/status/39.rrd' (metric 'status', 1383720948:100)
....
[1383720951] debug:   RRD: new data for metric 48 (time 1383720948) 
[1383720951] debug:   RRD: opening file '/var/lib/centreon/metrics/48.rrd' (DS:rta:GAUGE:300:U:U, RRA:AVERAGE:0.5:1:51841,
 RRA:AVERAGE:0.5:12:4320, interval 300, from 0)
[1383720951] debug:   RRD: updating file '/var/lib/centreon/metrics/48.rrd' (metric 'rta', 1383720948:0.159000)
[1383720952] debug:   RRD: new data for metric 49 (time 1383720948) 
[1383720952] debug:   RRD: opening file '/var/lib/centreon/metrics/49.rrd' (DS:pl:GAUGE:300:U:U, RRA:AVERAGE:0.5:1:51841, 
RRA:AVERAGE:0.5:12:4320, interval 300, from 0)
[1383720952] debug:   RRD: updating file '/var/lib/centreon/metrics/49.rrd' (metric 'pl', 1383720948:0.000000)
[1383720952] debug:   RRD: new data for metric 50 (time 1383720948) 
[1383720952] debug:   RRD: opening file '/var/lib/centreon/metrics/50.rrd' (DS:rtmax:GAUGE:300:U:U, RRA:AVERAGE:0.5:1:51841, 
RRA:AVERAGE:0.5:12:4320, interval 300, from 0)
[1383720952] debug:   RRD: updating file '/var/lib/centreon/metrics/50.rrd' (metric 'rtmax', 1383720948:0.217000)
[1383720952] debug:   RRD: new data for metric 51 (time 1383720948) 
[1383720952] debug:   RRD: opening file '/var/lib/centreon/metrics/51.rrd' (DS:rtmin:GAUGE:300:U:U, RRA:AVERAGE:0.5:1:51841, 
RRA:AVERAGE:0.5:12:4320, interval 300, from 0)
[1383720952] debug:   RRD: updating file '/var/lib/centreon/metrics/51.rrd' (metric 'rtmin', 1383720948:0.093000)
Ensuite, un update est réalisé en fonction de la fréquence des contrôles.
[1383720951] debug:   RRD: new status data for index 39 (0) 
[1383720951] debug:   RRD: updating file '/var/lib/centreon/status/39.rrd' (metric 'status', 1383720948:100)
.......
[1383720895] debug:   RRD: new data for metric 36 (time 1383720893) 
[1383720895] debug:   RRD: updating file '/var/lib/centreon/metrics/36.rrd' (metric 'rta', 1383720893:0.015000)
[1383720895] debug:   RRD: new data for metric 37 (time 1383720893) 
[1383720895] debug:   RRD: updating file '/var/lib/centreon/metrics/37.rrd' (metric 'pl', 1383720893:0.000000)
[1383720895] debug:   RRD: new data for metric 38 (time 1383720893) 
[1383720895] debug:   RRD: updating file '/var/lib/centreon/metrics/38.rrd' (metric 'rtmax', 1383720893:0.033000)
[1383720895] debug:   RRD: new data for metric 39 (time 1383720893) 
[1383720895] debug:   RRD: updating file '/var/lib/centreon/metrics/39.rrd' (metric 'rtmin', 1383720893:0.006000)
Les fichiers RRD se trouvent dans le dossier /var/lib/centreon comme ci-dessous.
Stacks Image 5543
Les fichiers RRD
 

11 - vérification des stats de Centreon-Broker

Si vous avez configuré les modules statistiques vous avez la possibilité de vérifier le bon fonctionnement de toute la chaine de Centreon-Broker dans l'interface Web de Centreon. Connectez-vous à l'interface, sélectionnez Home / Monitoring Engine Statistics / Broker Statistics
Stacks Image 5527
Statistique du cbd-central-broker
Stacks Image 5530
Statistique des deux autres modules
Cet article est terminé, vous avez tous les outils pour vérifier le broker de votre supervision. Les remarques sont bien sûr acceptées !
comments powered by Disqus
 Vous êtes ici: