Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Make by tools (01.00.01) - action=merge_page
Scroll Ignore
scroll-viewporttrue
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmltruefalse
Panel
titleSommaire

Table of Contents
stylenone

Gestion du module

Sur réception du signal SIGUSR1 le module va effectuer un dump de sa mémoire, pour tout autre signal, le module va s'éteindre arrêter :

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ MANAGE SIGNAL ] The worker with the pid XXXX received a signal XX

Arrêt critique

Quand le processus de pilotage s'arrête de façon inopinée :

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ WORKER:XXXXXXXXX  ] I am a worker with pid: XXXX and my master process YYYY is dead, I exit.

Demande d'un dump de la mémoire

Le dump est fait

Python 2.6
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ WORKER pid=XXXX ] (support-only) MemoryMEMORY information dumped to file FFFFFFF DUMP (to be sent to the support)

Le dump a échoué

:
xxxxxxxx
xxxxxxxx
xxxxxxxx
Python 2.7
Code Block
languagejs
themeConfluence
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ WORKER pid=XXXX ] (support-only) MEMORY DUMP: FAIL check if meliae lib is installed

Connexion à la base de données

Dans les logs suivants, le mot clé SOUS-SECTION peut valoir une des valeurs suivantes :

  • LOAD RETENTION
  • DELETE OLD RETENTION
  • SAVE WORKER XXXXX

Connexion normale

Memory information dumped to file FFFFFFF (to be sent to the support)

Le dump a échoué

Python 2.6
code
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] We are creating mongo connection [uri=mongodb://192.168.1.120/?safe=false] [database=shinken] [ssh=True]
[WORKER pid=XXXX ] MEMORY DUMP: FAIL check if guppy lib is installed
Python 2.7
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] Connection created in : 0.200s

La connexion échoue

 WORKER pid=XXXX ] (support-only) MEMORY DUMP: FAIL check if meliae lib is installed

Connexion à la base de données

Pour la connexion à la base de données, quatre SOUS-SECTIONS existent : 
SectionDescription
LOAD RETENTIONCorrespond au chargement de la rétention
DELETE OLD RETENTIONCorrespond à la suppression des anciennes rétentions
SAVECorrespond à la sauvegarde
RETENTION STATUS
Correspond à l'étape de vérification de l'état de la rétention, avant son chargement

Connexion normale

Code Block
languagejs
themeConfluence
Code Block
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] Mongo connection failed 1/X time, we will try again
[YYYY-MM-DD HH:MM:SS] WARNING: INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] MongoTry to open a Mongodb connection to failed Y/X times, we will try again[ mongodb://192.168.1.120/?w=1&safe=false ] database [ shinken ]
[YYYY-MM-DD HH:MM:SS] ERRORINFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTIONINITIALISATION ] [ MongoMONGO ] connection[ failedSSH X/X times, we stop trying

La connexion a été perdue ou n'existe pas

Code Block
TUNNEL ] Connection to mongodb://192.168.1.120/?w=1&fsync=false with a ssh tunnel:
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ SOUS-SECTIONMONGO ] [ SSH TUNNEL ]  We need to- createsearching a mongo connection

suivi des logs de la connexion normale

La connexion n'a pas pu être établie

Code Block
 random local port available for the tunnel binding (trying 15978): localhost:15978 =(ssh tunnel)=>
bastdev2:22 =(mongodb)=> 192.168.1.120:27017 (search try:1)
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTIONINITIALISATION ] Could[ notMONGO create] mongo connection

Erreur de configuration du module

Si plusieurs url mongo sont précisées

Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MODULES-MANAGER ] The instance MongodbRetention raised an error: Multiples urls were found in the module's configuration file. I disable it and set it to restart it later

Sauvegarde en rétention

Pour la sauvegarde de la rétention, trois types de logs existent: 

[ SSH TUNNEL ]      - tunnel creation SUCCESS: localhost:15978 =(ssh tunnel)=> 192.168.1.120:22 =(mongodb)=> 192.168.1.120:27017 (search try:1, ssh pid=22096)
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ]    - SUCCESS mongo connection is OPENED with the SSH tunnel: localhost:15978 =(ssh tunnel)=> 192.168.1.120:22 =(mongodb)=> 192.168.1.120:27017
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] Mongo connection established in 0.200s

Il y indique :

  • L'URL utilisée
  • La base de données (peut être différente du défaut "shinken" comme ici)
  • Si un tunnel SSH est utilisé, les ports utilisés pour la redirection du trafic
  • Le temps prit pour se connecter à la base mongo

La connexion échoue

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ MONGO ] Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 1/5
...
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ MONGO ] Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 2/5
...
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ MONGO ] Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 3/5
...
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ MONGO ] Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 4/5
...
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ MONGO ] Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 5/5. We tried 5 times but it kept failing.

La connexion n'a pas pu être établie

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] LOAD RETENTION ] FAILED Retention could not be loaded from mongodb: Mongo raised ERROR_MESSAGE on the operation get_connection. Operation failed : 5/5. We tried 5 times but it kept failing.

Erreur de configuration du module

Si plusieurs url mongo sont précisées

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MODULES-MANAGER ] The instance MongodbRetention raised an error: Multiples urls were found in the module's configuration file. I disable it and set it to restart it later

Sauvegarde en rétention

Pour la sauvegarde de la rétention, trois SOUS-SECTION existent:

SectionDescription
SAVE GLOBALCorrespond au processus global de la sauvegarde
SAVE WORKERSCorrespond à un sous-processus de SAVE GLOBAL, qui s'occupe de la file d'attente des différents workers de la sauvegarde
SAVE WORKER XC'est un sous-processus de SAVE WORKERS, correspondant à un worker numéroté X qui permet de sauvegarder une partie des informations du scheduler en base. Le nombre de workers est paramétrable dans les paramètres du module. ( voir Module MongodbRetention ( Rétention en base de données centralisée par royaume ) )

SAVE GLOBAL

Les logs SAVE GLOBAL donnent des informations relatives au fonctionnement global du module ou de sa configuration.

Avant de faire la rétention, le module informe de l'URI utilisé ainsi que du nombre total d'hôtes et de checks à sauvegarder.

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE GLOBAL      ] Starting to save retention with VV worker(s). [ XX:hosts/clusters ] [ YY:checks ] ( Database used = mongodb://127.0.0.1safe=false, use ssh = 0 ), max time allowed for the save ZZ seconds
 

Dans l'exemple :

  • VV : Le nombre de workers lancés en parallèle pour effectuer la sauvegarde.
  • XX : Le nombre d'hôtes et clusters qui vont être sauvegardés.
  • YY : Le nombre de checks qui vont être sauvegardés.
  • ZZ : Le temps défini pour que la sauvegarde de la rétention se réalise


Code Block
languagetext
themeEmacs
titleExemple
[2025-02-11 09:53:59] INFO   : [ scheduler-master
SectionDescriptionSAVE GLOBALCorrespond au processus global de la sauvegardeSAVE WORKERSCorrespond à un sous-processus de SAVE GLOBAL, qui s'occupe de la file d'attente des différents workers de la sauvegardeSAVE WORKER XC'est un sous-processus de SAVE WORKERS, correspondant à un worker numéroté X qui permet de sauvegarder une partie des informations du scheduler en base. Le nombre de workers est paramétrable dans les paramètres du module. ( voir Rétention en base de données centralisée par royaume ( Module MongodbRetention ) )

SAVE GLOBAL

Les logs SAVE GLOBAL donnent des informations relatives au fonctionnement global du module ou de sa configuration.

Code Block
titleExemple
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE GLOBAL ] Starting to save retention data with 4 worker(s). [XXX 10:hosts/clusters ] [XXX 100:checks ] ( Database used = mongodb://HOST/?safe=false, use ssh = False)
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE GLOBAL ] SUCCESS Retention data was saved into mongodb. Total time X.XXs = mongodb://192.168.1.56/?w=1&fsync=false, use ssh = 1 ), max time allowed for the save 120 seconds

Erreurs

Les erreurs lors de la sauvegarde de la rétention sont aussi enregistrées dans les logs sous cette forme: 

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MODULES-MANAGER ]  The instance MongodbRetention raised an error: ERROR MESSAGE. Total time XX.XXs. I disable it and set it to restart it later
Exemples
Exemple
Code Block
languagetext
themeEmacs
[YYYY2025-MM02-DD11 HH09:MM56:SS50] ERROR  : [ SCHEDULERNAMEscheduler-master ] [ MODULES-MANAGER  ] The instance MongodbRetention raised an error: [ SAVE GLOBAL     ] FAILED Retention data could not be saved in mongodb. Total time 22194.20s80s. I disable it and set it to restart it later
Code Block
languagetext
themeEmacs
[2025-02-11 09:56:50[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAMEscheduler-master ] [ MODULES-MANAGER  ] The instance MongodbRetention raised an error: [ SAVE GLOBAL      ] FAILED Retention data could not be saved in mongodb because mongo is unreachable. Total time 2194.11s80s. I disable it and set it to restart it later

SAVE WORKERS

Les logs SAVE WORKERS donnent l'état de chaque worker de sa création à son succès/échec.

Code Block
languagejs
titlethemeExempleConfluence
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Starting worker X with pid XXXXX. Try: X/Xpid XXXX. Try: [ Y ], max time allowed [ ZZs ]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] The worker X didsuccessfully SUCCESSended ( after Y Xtries try)


La préparation des données à sauvegarder a été longue :

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] [ PERF ] [ X.XXXs ] atomization duration


Des erreurs empêchent le bon déroulé de la sauvegarde :

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] some workers did fail to exit or encountered an error. The retention save can be incomplete.
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Too many tries failed
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Cannot start the XXXXXXXXX worker process as there is not enough memory
code
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Cannot start the worker XXXXX process: XX. Exiting the retention save, killing all currently launched workers
launched workers
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] ERROR MESSAGE
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] "EXCEPTION PYTHON"

SAVE WORKER X

Les logs SAVE WORKER X donne donnent pour le worker ayant l'identifiant identifiant X, les statistiques sur les sauvegardes qu'il a effectuées : le nombre d'éléments, résultat et temps d'exécution.

Code Block
languagejs
themeConfluence
titleExemple
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Preparing elements to save
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER 0X ] UpdatingTook retentionX.XXms with elements: checks [to prepare XXX ] -- hosts/clusters [and XX ] in mongodbXXXX checks
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER 0X ] Took RetentionX.XXms datato savedconnect into mongodb in X.XXX seconds

Erreurs

Code Block
to Mongo
[YYYY-MM-DD HH:MM:SS] INFO   WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] The worker (pid:XXXX | try:XX) did not exit on time (XX s). We are restarting it.
Code Block
 [ SAVE WORKER X ] hosts/clusters will be saved in groups of maximum 1000
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] FailedSaved connection with the following message : ERROR MESSAGE
Perte de connexion à la base de données
Code Block
XXX/XXX hosts/clusters ( took X.XXms )
[YYYY-MM-DD HH:MM:SS] INFO WARNING  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] workerTook hasX.XXms beento disconnectedsave of mongo. Will retry [1/X]XXX hosts/clusters
[YYYY-MM-DD HH:MM:SS] INFO  WARNING : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] workerchecks haswill beenbe disconnectedsaved ofin mongo.groups Willof retry [Y/X]maximum 1000
[YYYY-MM-DD HH:MM:SS] INFO   WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] worker has been disconnected of mongo. Will retry [X/X]Saved XXXX/XXXX checks ( took X.XXms )
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] AfterSaved X tries, worker could not connect to mongo :[ERROR MESSAGE]XXXX/XXXX checks ( took X.XXms )
[YYYY-MM-DD HH:MM:SS] ERRORINFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] (pid=XXXX) "EXCEPTION PYTHON"
Code Block
 Took X.XXms to save XXXX checks
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Worker has an error: [ ERROR MESSAGE ]
 ended in X.XXms

Informations :

  • Du démarrage du worker
  • Du temps que le worker met a préparer les éléments ( sélection, sérialisation)
  • Du temps prit pour se connecter à la base Mongo
  • De la taille des groupes d'éléments sauvegardés
  • De l'avancement de chaque groupe et du temps prit
  • Du temps total pris par le worker

Erreurs

Perte de connexion à la base de données
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] [ MONGO ] (pid=XXXX) "EXCEPTION PYTHON"

Chargement de la rétention

Les logs fournissent des informations liées au chargement de la rétention, permettant de suivre son avancée et l'état sur la connexion à Mongo.

Code Block
Mongo raised ( Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 1/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE RETENTIONWORKER ] [ HOSTS / CLUSTERS X ] [ X.XXXsMONGO ] WeMongo tookraised X(    hosts/clusters  from the retention [ in scheduler hosts/clusters : without retention=X    / total=1    ]Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 2/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE LOADWORKER RETENTIONX ] [ HOSTS / CLUSTERSMONGO ] NoMongo host/clusterraised are( neededMongo forconnection retentionfailure loadto (schedulerxxxxxxx already) haveon allthe Xoperation get_connection. Operation failed hosts retention data).: 3/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE LOADWORKER RETENTIONX ] [ CHECKSMONGO ] Mongo raised ( Mongo connection failure to xxxxxxx ) ]on the [operation X.XXXs ] We took X    checks          from the retention [ in scheduler checks         : without retention=XX   / total=XX   ]get_connection. Operation failed : 4/5
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] [ MONGO ] Mongo raised ( Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 5/5. We tried 5 times but it kept failing.
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE LOADWORKER RETENTIONX ] [After CHECKS5 tries, worker could not connect to mongo :[Mongo raised ( ]Mongo Noconnection checksfailure to xxxxxxx ) on   are needed for retention load (scheduler already have all X    checks retention data).
the operation get_connection. Operation failed : 5/5. We tried 5 times but it kept failing.]

Erreur Inconnue
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] [ X.XXXs]  Total number of elements load from mongo database: X    ( scheduler have a total of XX   elements )SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Worker has an error:[ ERROR MESSAGE ]
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] [SAVE WORKER X.XXXs ] SUCCESS Retention data loaded successfully.

Erreurs

(pid=XXXX) "EXCEPTION PYTHON"

OVERSIZED DATA - Détection d'éléments avec une taille anormale

Code Block
languagejs
themeConfluence

Les erreurs lors du chargement de la rétention sont aussi enregistrées dans les logs sous cette forme:

code
[YYYY-MM-DD HH:MM:SS] ERROR  LOG_LEVEL: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] [ LOAD RETENTION ] FAILED Retention data could not be loaded from mongodb: ERROR MESSAGE DETAILS
Code Block
OVERSIZED DATA ] [ DETAILS ] oversized data of XXXXB for ELEMENT_TYPE ELEMENT_UUID may cause database query to fail. Detail of potential expensive content: ELEMENT_DETAILS
[YYYY-MM-DD HH:MM:SS] ERROR  LOG_LEVEL: [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE WORKER RETENTIONX ] error[ queryingOVERSIZED hostDATA entries:] ERROR[ MESSAGE.SIZE Module exiting.
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] error querying checks entries: ERROR MESSAGE. Module exiting.

Suppression des anciennes rétentions

] oversized data of XXXXB for ELEMENT_TYPE ELEMENT_UUID may cause database query to fail. Size of potential expensive content: ELEMENT_SIZE_DETAILS

La sauvegarde de la rétention peut échouer si au moins un élément dépasse la taille maximale que peut supporter la base de données. Le module va afficher les éléments pouvant causer cette erreur suivant des seuils définis dans sa configuration.

Paramètre du moduleNiveau de log
No Format
scheduler__retention_mongo__oversized_element_warning_threshold__size
WARNING
No Format
scheduler__retention_mongo__oversized_element_error_threshold__size
ERROR
Code Block
languagetext
themeEmacs
titleExemple
[2025-07-23 10:29:45] WARNING: [ scheduler-master ] [ MongodbRetention ] [ SAVE WORKER 0 ] [ OVERSIZED DATA ] [ DETAILS ] oversized data of 12845B for service 80e69ea445e111f0abb10800270aacd1-97373c2245e111f080950800270aacd1 may cause database query to fail. Detail of potential expensive content: total notifications nb:141384, notified contacts uuid list nb:1, incident nb:1, notifications in progress nb:0, downtimes nb:0, checks in progress nb:0
[2025-07-23 10:29:45] WARNING: [ scheduler-master

Les logs de suppression permettent de voir le nombre d'objets supprimés (triés par hôtes et checks) ainsi que la date à partir de laquelle la rétention est conservée.

Code Block
titleExemple avec des objets à supprimer
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION   ] We will delete all retention data that were saved before the XXXX-XX-XX XX:XX UTC (X days)
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER DELETE0 OLD] RETENTION[ OVERSIZED DATA ] [ SIZE -] Deletingoversized XXXdata hostsof from12845B oldfor retention [XXXX by XXXX]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLDservice 80e69ea445e111f0abb10800270aacd1-97373c2245e111f080950800270aacd1 may cause database query to fail. Size of potential expensive content: outputs size:167B, current and last perf data size:98B, downtimes user content size:0B, acknowledgement user content size:0B

Chargement de la rétention

Les logs fournissent des informations liées au chargement de la rétention, permettant de suivre son avancée et l'état sur la connexion à Mongo.

Code Block
languagejs
themeConfluence
 RETENTION   ]  - XXX  - hosts deleted in X.XXXs
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETELOAD OLDRETENTION RETENTION] Try to ]open a -Mongodb Deletingconnection XXXto services from old retention [XXXX by XXXX[ mongodb://127.0.0.1/?safe=false ] database [ shinken ]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLDLOAD RETENTION   ]  - XXX  - services deletedMongo connection established in X4.XXXs94ms
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETELOAD OLDRETENTION RETENTION] [ HOSTS/CLUSTERS ] Total time for deleting XXXX entries = X.XXXs
Code Block
titleExemple sans objets à supprimer
Scheduler has XXX/XXX hosts/clusters in its cache and need load retention for XXX/XXX
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION   ] [ MongodbRetention ] We[ willLOAD deleteRETENTION all] retention[ dataHOSTS/CLUSTERS that] wereTook saved3.52ms before the XXXX-XX-XXto load XX:/XX UTC (X days)hosts/clusters
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION   ] There is no data to deleteLOAD RETENTION ] [ CHECKS         ] Scheduler has YYY/YYY checks in its cache and need load retention for YYY/YYY
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTIONLOAD RETENTION ] [ CHECKS   ] Total time for deleting 0 entries] =Took X.XXXs

Erreur : perte de connexion à la base de données

Code Block
28.00ms to load YYY/YYY checks
[YYYY-MM-DD HH:MM:SS] INFO WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETELOAD OLD RETENTION ] We have been disconnected of mongo. Will retry [1/3] Took 32.07ms to load ZZZ/ZZZ elements
[YYYY-MM-DD HH:MM:SS] WARNINGINFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLDLOAD RETENTION ] WeTook have5.99ms beento disconnectedrestore ofdata mongo. Will retry [2/to Scheduler

Erreurs

Les erreurs lors du chargement de la rétention sont aussi enregistrées dans les logs sous cette forme:

Code Block
languagejs
themeConfluence
3]
[YYYY-MM-DD HH:MM:SS] ERROR WARNING : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETELOAD OLD RETENTION ] FAILED Retention Wecould havenot beenbe disconnectedloaded offrom mongo.mongodb: WillERROR retry [3/3]
MESSAGE DETAILS
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLDLOAD RETENTION ] Aftererror 3 tries, we couldn't connect to mongoquerying hosts/clusters entries: ERROR MESSAGE. Module exiting.
Code Block
languagejs
themeConfluence
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETELOAD OLD RETENTION ] We have an error:[ERROR MESSAGE]
 error querying checks entries: ERROR MESSAGE. Module exiting.

Suppression des anciennes rétentions

Les logs de suppression permettent de voir le nombre d'objets supprimés (triés par hôtes et checks) ainsi que la date à partir de laquelle la rétention est conservée.

Code Block
languagejs
themeConfluence
titleExemple avec des objets à supprimer
[YYYY-MM-DD HH:MM:SS] ERRORINFO  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] "EXCEPTION PYTHON"

Sauvegarde des données

Initialisation

Avant de faire la rétention, le module nous informe de l'URI utilisé ainsi que du nombre total d'hôtes et de checks à sauvegarder.

Code Block
themeEmacs
 Checking old elements ( hosts/clusters/checks ) not updated since 7 days -> YYYY-MM-DD HH:MM UTC
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE GLOBALOLD RETENTION ]  - XXX ]hosts/clusters Startingdeleted to save retention data with X worker(s). [YY:hosts] [ZZ:checks] (Database used = mongodb://127.0.0.1/?safe=false, use ssh = True/False)

Dans l'exemple :

  • X : Le nombre de workers lancés en parallèle pour effectuer la sauvegarde.
  • YY : Le nombre d'hôtes et clusters qui vont être sauvegardés.
  • ZZ : Le nombre de checks qui vont être sauvegardés.

Démarrage des workers

La sauvegarde dans la base mongo se fait avec plusieurs workers, un log par worker nous informe de son PID lors leur création.

Code Block
themeEmacs
in 377.65ms
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ]  - YYY checks deleted in 184.476ms
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE SAVEOLD WORKERSRETENTION ]  Total time ]for Startingdeleting workerX 0old withelements pid= XXXXX562.126ms Try: 1/3
 
Code Block
languagejs
themeConfluence
titleExemple sans objets à supprimer
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE SAVEOLD WORKERSRETENTION ] Checking old elements ] Starting worker 1 with pid YYYYY. Try: 1/3

Connexion à une base de donnée

Quand le module mongo se connecte à une base de données, on va avoir le log suivant:

Code Block
themeEmacs
( hosts/clusters/checks ) not updated since 7 days -> YYYY-MM-DD HH:MM UTC
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE WORKER X   OLD RETENTION ] We are- creatingThere mongois connection [uri=mongodb://127.0.0.1/?safe=false] [database=shinken_retention] [ssh=False]no data to delete
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE SAVEOLD WORKERRETENTION X] Total time for ]deleting ConnectionX createdold inelements := 01.006s

Il y indique :

  • L'URL utilisée
  • La base de données (peut être différente du défaut "shinken" comme ici)
  • Si un tunnel SSH va être utilisé ou pas
  • Le temps prit pour se connecter à la base mongo

Sauvegarde des données

17ms 

Erreur : perte de connexion à la base de données

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] We have been disconnected of mongo. Will retry [1/3]

Après avoir créé des workers, chaque worker nous informe de sa progression avec les logs suivants :

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] INFO   WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE WORKEROLD XRETENTION    ] UpdatingWe retentionhave withbeen elements:disconnected checksof [mongo. YY ] -- hosts [ ZZ ] in mongodbWill retry [2/3]
[YYYY-MM-DD HH:MM:SS] INFO   WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X    SCHEDULERNAME ] Retention[ dataMongodbRetention saved] into[ mongodb in 0.018 seconds

Nous sommes donc informés de :

  • Du nombre d'éléments mis à jour dans la base ( nombre de checks et nombre d'hôtes )
  • Le temps que la sauvegarde a pris

Succès de la sauvegarde

Si la sauvegarde se passe bien, nous sommes informés du succès de chaque worker, ainsi que du succès global si tous les workers ont réussi à sauvegarder les données dans la base mongo, et le temps qu'ils ont mis.

Code Block
themeEmacs
DELETE OLD RETENTION ] We have been disconnected of mongo. Will retry [3/3]
[YYYY-MM-DD HH:MM:SS] ERROR INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE OLD WORKERSRETENTION ] TheAfter worker3 0tries, we couldn't connect to mongo
Code Block
languagejs
themeConfluence
did SUCCESS (after 1 try) 
[YYYY-MM-DD HH:MM:SS] INFOERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE OLD WORKERSRETENTION ] TheWe workerhave 1 did SUCCESS (after 1 try) an error:[ERROR MESSAGE]
[YYYY-MM-DD HH:MM:SS] INFOERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE OLD GLOBALRETENTION ] Retention data was saved into mongodb. Total time 0.28s"EXCEPTION PYTHON"