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:XXXX  ] 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) MEMORY DUMP (to be sent to the support):
xxxxxxxx
xxxxxxxx
xxxxxxxx
Python 2.7
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ WORKER pid=XXXX ] (support-only) Memory information dumped to file FFFFFFF (to be sent to the support)

Le dump a échoué

Python 2.6
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ 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] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ 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, trois quatre SOUS-SECTIONSECTIONS existent : 
SectionDescription
LOAD RETENTIONCorrespond au chargement de la rétention
DELETE OLD RETENTIONCorrespond à la suppression des anciennes rétentions
SAVE
WORKER XXXX
Correspond
aux workers utilisés pour
à la sauvegarde
en rétention

Connexion normale

RETENTION STATUS
Correspond à l'étape de vérification de l'état de la rétention, avant son chargement

Connexion normale

Code Block
languagejs
themeConfluence
[YYYY
Code Block
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] WeTry to areopen creatinga mongoMongodb connection to [uri= mongodb://192.168.1.120/?w=1&safe=false ] database [database= shinken] [ssh=True]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTIONINITIALISATION ] [ MONGO Connection] created[ inSSH : 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 va être utilisé ou pas
  • Le temps prit pour se connecter à la base mongo

La connexion échoue

Code Block
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTION ] Mongo connection failed 1/X time, we will try againTUNNEL ] Connection to mongodb://192.168.1.120/?w=1&fsync=false with a ssh tunnel:
[YYYY-MM-DD HH:MM:SS] INFO WARNING  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTIONINITIALISATION ] Mongo connection failed Y/X times, we will try again
[YYYY-MM-DD HH:[ MONGO ] [ SSH TUNNEL ]    - searching a 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] ERRORINFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SOUS-SECTIONINITIALISATION ] Mongo[ connectionMONGO failed] X/X times, we stop trying

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

Code Block
[YYYY-MM-DD HH:MM:SS] INFO[ SSH TUNNEL ]    : [ SCHEDULERNAME- ]tunnel [creation MongodbRetention ] [ SOUS-SECTION ] We need to create a mongo connection

La connexion n'a pas pu être établie

Code Block
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 ] [ SOUS-SECTION INITIALISATION ] [ MONGO ] [ SSH TUNNEL ] Could   not- createSUCCESS mongo connection

Erreur de configuration du module

Si plusieurs url mongo sont précisées

Code Block
 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 ERROR  : [ SCHEDULERNAME ] [ MODULES-MANAGERMongodbRetention ] The[ instanceSOUS-SECTION MongodbRetention] raisedMongo anconnection error:established 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:

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 ) )
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

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 nous informe de l'URI utilisé ainsi que du nombre total d'hôtes et de checks à sauvegarder.

Code Block
themeEmacs
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEMONGO GLOBAL] Mongo raised ERROR_MESSAGE on  ] Starting 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.
Code Block
titleExemple
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] INFO WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEINITIALISATION GLOBAL ] SUCCESS[ RetentionMONGO data] was[ saved into mongodb. Total time X.XXs

Erreurs

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

Code Block
SSH TUNNEL ] Connection to mongo failed, closing the SSH tunnel
[YYYY-MM-DD HH:MM:SS] ERRORINFO   : [ SCHEDULERNAME ] [ MODULES-MANAGERMongodbRetention ] [ TheMONGO instance] MongodbRetentionMongo raised an error: ERROR_MESSAGE MESSAGE.on Totalthe timeoperation XXget_connection.XXs. IOperation disablefailed it and set it to restart it later
Exemples
Code Block
: 3/5
...
[YYYY-MM-DD HH:MM:SS] ERROR  WARNING: [ SCHEDULERNAME ] [ MODULES-MANAGERMongodbRetention  ] The[ instanceINITIALISATION MongodbRetention] raised[ anMONGO error:] [ SAVESSH GLOBALTUNNEL ] FAILEDConnection Retentionto datamongo couldfailed, notclosing bethe saved in mongodb. Total time 22.20s. I disable it and set it to restart it later
Code Block
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] ERROR  WARNING: [ SCHEDULERNAME ] [ MODULES-MANAGERMongodbRetention  ] The[ instanceINITIALISATION MongodbRetention] raised[ anMONGO error:] [ SAVESSH GLOBALTUNNEL ] FAILEDConnection Retentionto datamongo couldfailed, notclosing bethe saved in mongodb because mongo is unreachable. Total time 2.11s. I disable it and set it to restart it later

SAVE WORKERS

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

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

Code Block
titleExemple
[YYYY-MM-DD HH:MM:SS] INFOERROR    : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVELOAD WORKERSRETENTION ] StartingLOAD workerRETENTION X] withFAILED pidRetention XXXX.could Try: X/X
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] The worker X did SUCCESS (after X try)

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

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
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ PERF ] [ X.XXXs ] atomization durationMODULES-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

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

Code Block
[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
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Too many tries failed
Code Block
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERSGLOBAL ] Cannot start the XXXX worker] processStarting asto theresave isretention notwith enough memory
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] Cannot start the worker XXXX process: XX. Exiting the retention save, killing all currently launched workers
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
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERSGLOBAL ] ERROR MESSAGE
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAMEStarting to save retention with 4 worker(s). [ 10:hosts/clusters ] [ MongodbRetention100:checks ] [( SAVEDatabase WORKERSused ] "EXCEPTION PYTHON"

SAVE WORKER X

= 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
[

Les logs SAVE WORKER X donne pour le worker ayant l'identifiant X, les statistiques sur les sauvegardes qu'il a effectuées.

Code Block
titleExemple
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Updating retention with elements: checks [ XXX ] -- hosts [ XX ] in mongodb
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetentionMODULES-MANAGER ] [ SAVEThe WORKERinstance X ]  Retention data saved into mongodb in X.XXX 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

Erreurs

MongodbRetention raised an error: ERROR MESSAGE. Total time XX.XXs. I disable it and set it to restart it later
Exemple
Code Block
languagetext
themeEmacs
[2025-02-11 09:56:50] ERROR  : [ scheduler-master ] [ MODULES-MANAGER  ] The instance MongodbRetention raised an error: [ SAVE GLOBAL     ] FAILED Retention could not be saved in mongodb. Total time 194.80s. I disable it and set it to restart it later
Code Block
languagetext
themeEmacs
[2025-02-11 09:56:50
Code Block
[YYYY-MM-DD HH:MM:SS] 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
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAMEscheduler-master ] [ MODULES-MANAGER  ] The instance MongodbRetention ]raised an error: [ SAVE WORKERGLOBAL     X ] FailedFAILED connectionRetention withcould thenot followingbe messagesaved :in ERROR MESSAGE
Perte de connexion à la base de données
mongodb because mongo is unreachable. Total time 194.80s. 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
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFO WARNING  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERWORKERS X ] Starting worker has been disconnected of mongo. Will retry [1/X X with pid XXXX. Try: [ Y ], max time allowed [ ZZs ]
[YYYY-MM-DD HH:MM:SS] INFO   WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERWORKERS X] ]The worker hasX beensuccessfully disconnectedended of mongo. Will retry [Y/X]
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] worker has been( after Y tries )


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

Code Block
languagejs
themeConfluence
[ disconnected of mongo. Will retry [X/X]
[YYYY-MM-DD HH:MM:SS] ERROR  WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERS ] WORKER[ XPERF ] After[ X.XXXs tries,] worker could atomization duration


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

Code Block
languagejs
themeConfluence
not connect to mongo :[ERROR MESSAGE]
[YYYY-MM-DD HH:MM:SS] ERRORINFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERWORKERS X ] (pid=XXXX) "EXCEPTION PYTHON"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  : [ 
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKERWORKERS X ] WorkerToo hasmany an error: [ ERROR MESSAGE ]
tries failed
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] (pid=XXXX) "EXCEPTION PYTHON"

Chargement de la rétention

WORKERS ] Cannot start the XXXX worker process as there is not enough memory
Code Block
languagejs
themeConfluence

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
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE RETENTIONWORKERS ] [Cannot HOSTSstart /the CLUSTERSworker ]XXXX [process: XXX.XXXs ] We took X    hosts/clusters  from  Exiting the retention [save, inkilling schedulerall hosts/clusterscurrently : without retention=X    / total=1    ]
launched workers
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE RETENTIONWORKERS ] [ HOSTS / CLUSTERS ] No host/cluster are needed for retention load (scheduler already have all X    hosts retention data).ERROR MESSAGE
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE RETENTIONWORKERS ] "EXCEPTION PYTHON"

SAVE WORKER X

Les logs SAVE WORKER X donnent pour le worker ayant l'identifiant X, les statistiques sur les sauvegardes qu'il a effectuées.

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 X ] Took X.XXms to prepare XXX hosts/clusters and XXXX checks[ CHECKS           ] [ X.XXXs ] We took X    checks          from the retention [ in scheduler checks         : without retention=XX   / total=XX   ]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE WORKER RETENTIONX ] [Took CHECKSX.XXms to connect to Mongo
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] No[ checksMongodbRetention ] [ SAVE WORKER X ] arehosts/clusters neededwill forbe retentionsaved loadin (schedulergroups alreadyof have all X    checks retention data).maximum 1000
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE RETENTIONWORKER ]X [ X.XXXs] Saved Total number of elements load from mongo database: X    ( scheduler have a total of XX   elements )XXX/XXX hosts/clusters ( took X.XXms )
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Took X.XXms to save XXX hosts/clusters
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE LOADWORKER RETENTIONX ] [ X.XXXs ] SUCCESS Retention data loaded successfully.

Erreurs

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

Code Block
[YYYY-MM-checks will be saved in groups of maximum 1000
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE WORKER RETENTIONX ] FAILEDSaved RetentionXXXX/XXXX datachecks could( nottook be loaded from mongodb: ERROR MESSAGE DETAILS
Code Block
X.XXms )
[YYYY-MM-DD HH:MM:SS] ERRORINFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE LOADWORKER RETENTIONX ] errorSaved queryingXXXX/XXXX hostchecks entries:( ERRORtook MESSAGEX. Module exiting.
Code Block
XXms )
[YYYY-MM-DD HH:MM:SS] INFO ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOADSAVE WORKER RETENTIONX ] error querying checks entries: ERROR MESSAGE. Module exiting.

Suppression des anciennes rétentions

 Took X.XXms to save XXXX checks
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X ] Worker 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:

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 ] [ DELETESAVE WORKER OLDX RETENTION] [ MONGO ] Mongo -raised Deleting( XXXMongo hostsconnection from old retention [XXXX by XXXX]failure to xxxxxxx ) on the operation get_connection. Operation failed : 1/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE WORKER OLDX RETENTION] [ MONGO ]  - XXX  - hosts deleted in X.XXXsMongo raised ( Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 2/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE OLDWORKER RETENTIONX ] [ MONGO ] Mongo  - Deleting XXX services from old retention [XXXX by XXXX]raised ( Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 3/5
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE WORKER OLDX RETENTION] [ MONGO ] Mongo - XXX  - services deleted in X.XXXs
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION   ] Total time for deleting XXXX entries = X.XXXs
Code Block
titleExemple sans objets à supprimer
raised ( Mongo connection failure to xxxxxxx ) on the operation get_connection. Operation failed : 4/5
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE DELETEWORKER OLDX RETENTION] [ MONGO ] WeMongo willraised delete( allMongo retentionconnection datafailure thatto werexxxxxxx saved) beforeon the XXXX-XX-XX XX:XX UTC (X days) operation get_connection. Operation failed : 5/5. We tried 5 times but it kept failing.
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE OLDWORKER RETENTIONX ] After ]5 tries, -worker Therecould isnot no data to connect to 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.]

Erreur Inconnue
Code Block
languagejs
themeConfluence
delete
[YYYY-MM-DD HH:MM:SS] INFOERROR   : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE OLDWORKER RETENTION X  ] TotalWorker timehas foran deletingerror:[ 0ERROR entries = X.XXXs

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

Code Block
MESSAGE ]
[YYYY-MM-DD HH:MM:SS] WARNINGERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE OLDWORKER RETENTIONX ] We have been disconnected of mongo. Will retry [1/3]
(pid=XXXX) "EXCEPTION PYTHON"

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

Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] WARNINGLOG_LEVEL: [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETESAVE OLDWORKER RETENTIONX ] We[ haveOVERSIZED beenDATA disconnected] of[ mongo. Will retry [2/3]
[YYYY-MM-DD HH:MM:SS] WARNING: [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] We have been disconnected of mongo. Will retry [3/3]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 ] [ DELETESAVE OLDWORKER RETENTIONX ] After[ 3OVERSIZED tries,DATA we] couldn't[ connect to mongo
Code Block
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] We have an error:[ERROR MESSAGE]
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] "EXCEPTION PYTHON"

Sauvegarde des données

Initialisation

SIZE ] 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

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
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE GLOBALWORKER 0 ] [ OVERSIZED DATA ] Starting[ toDETAILS save] retentionoversized data of 12845B withfor 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

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 ] [ MongodbRetention ] [ SAVE WORKER 0 ] [ OVERSIZED DATA ] [ SIZE ] oversized data of 12845B for service 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
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] Try to open a Mongodb connection to [ mongodb://127.0.0.1/?safe=false ] database [ shinken ]
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] Mongo connection established in 4.94ms
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] [ HOSTS/CLUSTERS ] 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 ] [ LOAD RETENTION ] [ HOSTS/CLUSTERS ] Took 3.52ms to load XX/XX hosts/clusters
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD 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 ] [ LOAD RETENTION ] [ CHECKS         ] Took 28.00ms to load YYY/YYY checks
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] Took 32.07ms to load ZZZ/ZZZ elements
[YYYY-MM-DD HH:MM:SS] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] Took 5.99ms to restore data 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
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] FAILED Retention could not be loaded from mongodb: ERROR MESSAGE DETAILS
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] error querying hosts/clusters entries: ERROR MESSAGE. Module exiting.
Code Block
languagejs
themeConfluence
[YYYY-MM-DD HH:MM:SS] ERROR  : [ SCHEDULERNAME ] [ MongodbRetention ] [ LOAD RETENTION ] 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] INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE OLD RETENTION ] 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 ] [ DELETE OLD RETENTION ]  - XXX hosts/clusters deleted in 377.65ms

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
[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 ] [ SAVEDELETE OLD WORKERSRETENTION ]  Total time ]for Startingdeleting workerX 0old withelements pid= XXXX562.126ms Try: 1/3
 
Code Block
languagejs
themeConfluence
titleExemple sans objets à supprimer
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVEDELETE OLD WORKERSRETENTION ] Checking old elements ] Starting worker 1 with pid YYYY. 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 WORKEROLD X  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 WORKER X   OLD RETENTION ] UpdatingWe retentionhave withbeen elements:disconnected checksof [mongo. YYWill ]retry -- hosts [ ZZ ] in mongodb[2/3]
[YYYY-MM-DD HH:MM:SS] INFO   : [ SCHEDULERNAME ] [ MongodbRetention ] [ SAVE WORKER X    WARNING: [ 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] INFOERROR  : [ 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] ERROR INFO : [ SCHEDULERNAME ] [ MongodbRetention ] [ DELETE SAVEOLD 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"