Versions Compared

Key

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

Table of Contents
stylenone

Concept

Le module event-manger-writerย  de type event_container permet de disposer de la fonctionnalitรฉ du bac ร  รฉvรฉnement ( voir la page Vue - Les ร‰vรฉnements ), il gรจre .

Ce module peut s'accrocher :

  • sur un Broker pour gรฉrer l'รฉcriture des รฉvรฉnements en base de donnรฉes ( nous livrons par dรฉfaut un module nommรฉ event-manager-writer ) ;
  • sur un module de type webui, pour gรฉrer l'affichage des รฉvรฉnements ( nous livrons par dรฉfaut un module nommรฉ event-manager-reader ) ;


Nous dรฉtaillerons ici la configuration du module quand il รฉcrit les donnรฉes.


Warning

Pour que le la fonctionnalitรฉ de bac ร  รฉvรฉnement puisse afficher des รฉvรฉnements ร  jour, il faut absolument que ce module soit activรฉ sur un Broker pour รฉcrire les รฉvรจnements en base.

Infowarning

(warning)ย Il ne peut y avoir qu'unย event-manager-writerย par base MongoDB.

  • Donc,
par exemple avec 2 Brokers sur la mรชme machine :
  • pour avoir plusieurs modules qui รฉcrivent sur le mรชme serveur MongoDB, il faut les configurer pour รฉcrire dans des bases diffรฉrentes ( voir le paramรจtre database ci-dessous ).
  • Cependant, il est fortement dรฉconseillรฉ de configurer plusieurs modules sur un mรชme serveur MongoDB, en raison des ressources qu'un module peut requรฉrir ( bande passante disque et occupation disque )
  • soit, on active que le module sur un Broker
  • soit, on configure le module pour รฉcrire dans une autre base.


Il faut porter une attention particuliรจre sur le volume de la base d'รฉvรฉnements, dรป au fonctionnement du module et des informations qu'il stocke.


FONCTIONNEMENT :

  • Un รฉlรฉment ( hรดte, cluster, checks ) peut avoir :
    • peu de changements d'รฉtat, consommant ainsi une place raisonnable,
    • avoir une oscillation de son รฉtat ( alternance de pannes et de retour OK ), et ainsi enregistrer beaucoup de changements d'รฉtat.

  • Le souci est que la place prise par un changement d'รฉtat est variable, car chaque รฉvรฉnement stockรฉ contient le rรฉsultat court et le rรฉsultat long.
  • Pour un รฉlรฉment donnรฉ, seul un le changement de statut ( OK, Attention, Critique, Inconnu ) ou un changement de contexte ( Flapping, Downtime, Acknowledged ) va crรฉer crรฉera une nouvelle entrรฉe dans la liste des รฉvรฉnements.


    Info
    titleA NOTER

    Un cas modifie une entrรฉe dรฉjร  enregistrรฉe : Quand le statut d'un รฉlรฉment passe de l'รฉtat non confirmรฉ ร  l'รฉtat confirmรฉ, sans autre changement de son statut ou de son contexte, l'รฉvรฉnement le dรฉcrivant est mis ร  jour.

    • La colonneย Confirmation de Statut est modifiรฉe pour indiquer que ce statut a รฉtรฉ confirmรฉ.

    • la colonne Date de confirmation de Statut est modifiรฉe pour indiquer ร  partir de quand le statut a รฉtรฉ confirmรฉ, la colonne Date du changement indiquant toujours quand le statut ( en รฉtat non confirmรฉ ) a dรฉmarrรฉ.

Warning

Ce module fonctionne de paire avec le module : event-manager-reader qui permet ร  la Webui d'afficher les informations ( voir la page Module event-manager-reader ).

Activation du module

Activation du module

Les modules de type "event_container" vont gรฉrer l'รฉcriture des รฉvรฉnements en base de donnรฉes quand ils sont activรฉs sur un dรฉmon de type "broker", qu'on appellera le dรฉmon parentLe module event-manager-writer est un module qui peut รชtre activรฉ seulement sur le dรฉmon Broker.

  • L'activation du module s'effectue en ajoutant le nom de ce du module dans le fichier de la configuration du dรฉmon Broker dรฉmonย parent.
    • Pour
    ce faire, ouvrer , et ajouter
    • cela, il faut ouvrir le fichier de configuration du
    Broker ร  l'emplacement /etc/shinken/brokers/nom_du_broker.cfg
    • dรฉmon parent ( de type "broker"), et ajouter dans le paramรจtre modules, le nom du module de type "event
    -manager-writer
    • _container".

  • Il est possible de crรฉer plusieurs modules de type "event_container" pour รฉcrire les donnรฉes en base de donnรฉes.
    • Cela permet, par exemple, d'avoir des configurations diffรฉrentes en fonction des royaumes.

  • Tous les รฉlรฉments supervisรฉs doivent avoir un module de type "event_container" attachรฉ ร  un Broker du royaume, ou d'un royaume parent, pour que les รฉvรฉnements qu'ils gรฉnรจrent soient enregistrรฉs en base de donnรฉes.

Pour prendre en compte le changement de configuration, il faut redรฉmarrer l'Arbiter :

Code Block
languagetext
themeEmacs
service shinken-arbiter restart

Exemple d'activation du module nommรฉ "event-manager-writer" sur le dรฉmon "broker-master" ( configuration livrรฉe par dรฉfaut par Shinken )

L'exemple suivant

  • active le module "event-manager-writer" ,
  • sur le dรฉmon "broker-master", dont la configuration est dans le fichier /etc/shinken/brokers/broker-master.cfg.


Modification dans le fichier du module/etc/shinken/brokers/broker-master.cfg :

Code Block
languagejs
themeConfluence
define broker {
    [...]
    modules                   Module 1, Module 2, Module 3, event-manager-writer
  ย  [...]
}

Puis redรฉmarrage de l'Arbiter

Code Block
languagetext
themeEmacs
service shinken-arbiter restart

Crรฉer un nouveau module de type event_container pour l'enregistrement des รฉvรฉnements

Pour pouvoir configurer un module de type "event_container" pour l'enregistrement des รฉvรฉnements, il faut crรฉer un nouveau fichier de configuration grรขce au fichier d'exemple fourni par dรฉfaut.

  • Pour commencer, il faut choisir le nom du nouveau module.
    • Pour l'exemple, on l'appelle "Mon-Module-event-manager-writer".
    • Remplacer dans l'exemple le mot "Mon-Module-event-manager-writer" par le nom qui a รฉtรฉ choisi.
  • Puis il faut crรฉer le fichier de configuration :ย 
    • Copier le fichier de dรฉfinition du module d'exemple : /etc/shinken-user-example/configuration/daemons/brokers/modules/event_manager_writer/event_manager_writer-example.cfgย dans le rรฉpertoire de dรฉfinition des modulesย  /etc/shinken/modules/ .
      ( Exemple : /etc/shinken/modules/broker__Mon-Module-event-manager-writer.cfg )

      Scroll Title
      titleโ€‹
      Code Block
      languagetext
      themeEmacs
      cp /etc/shinken-user-example/configuration/daemons/brokers/modules/event_manager_writer/event_manager_writer-example.cfg /etc/shinken/modules/broker__Mon-Module-event-manager-writer.cfg
  • Ensuite, il faut modifier le fichier nouvellement crรฉรฉ pour configurer le nouveau module.
    • Il faut vรฉrifier que le fichier appartienne ร  l'utilisateur shinken et qu'il possรจde le droit d'รฉdition. Si ce n'est pas le cas, il faut effectuer les commandes suivantes :

      Code Block
      languagetext
      themeEmacs
      chown shinken:shinken /etc/shinken/modules/broker__Mon-Module-event-manager-writer.cfg
      chmod u+w /etc/shinken/modules/broker__Mon-Module-event-manager-writer.cfg
    • On change le nom du module en "Mon-Module-event-manager-writer" dans le fichier /etc/shinken/modules/broker__Mon-Module-event-manager-writer.cfg

      Code Block
      languagejs
      themeConfluence
      ... ย  ย  
      	# โ”€โ”€โ”€ Module name [ Must be unique ]                                                      [ MANDATORY ] โ”€โ”€โ”€
          # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
          module_name ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  Mon-Module-event-manager-writer
      ...
      
  • Ensuite, il faut ajouter le nouveau module dans la liste des module du Brokerย correspondant.

    • Dans notre exemple, on ajoute le module "Mon-Module-event-manager-writer" auย  dรฉmon "broker-master" dรฉfini dans le fichier /etc/shinken/brokers/broker-master.cfg

Exemple : par dรฉfaut, Shinken livreย un module dont le nom est "event-manager-writer" :
    • Code Block
      languagejs
      themeConfluence
      define broker { 
      
    • 	[...] 
      
    • 	modules ย  ย  
    • ย  					Module 1, Module 2, Module 3, Mon-Module-event-manager-writer
        
    • ย  [...] 
      }
Pour prendre en compte le changement de configuration,

  • Puis pour finir, il faut redรฉmarrer l'Arbiter

:
  • pour que le Broker puisse prendre en compte ce nouveau module.

    Code Block
    languagetext
    themeEmacs
    service shinken-arbiter restart

Configuration

La configuration du module que Shinken livre par dรฉfaut se trouve dans le fichier ย /etc/shinken/modules/event_manager_writer.cfg.

  • un exemple dans /etc/shinken-user-example/configuration/daemons/brokers/modules/event_manager_writer/event_manager_writer-example.cfg.

Exemple de fichier de configuration

Code Block
languagejs
themeConfluence
#================================================================================
# event manager
#================================================================================
# Daemons that can load this module:
#  - broker (to save events information into a mongodb database)
# This module compute and save event for event manager
#================================================================================

define module {

    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    MODULE IDENTITY    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€ Module name [ Must be unique ]                                                      [ MANDATORY ] โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    module_name                                         event-manager-writer

    # โ”€โ”€โ”€ Module type [ Do not edit ]                                                         [ MANDATORY ] โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    module_type                                         event_container

    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    MODULE OPTIONS    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€ Number of day the events are kept in database                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 30 ( days )                                                                       โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # day_keep_data                                       30

    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    DATABASE CONNECTION    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€  MongoDB parameters  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ #

    # โ”€โ”€โ”€ MongoDB uri definition . You can find the mongodb uri syntax at                                   โ”€โ”€โ”€
    # โ”€โ”€โ”€ https://docs.mongodb.com/manual/reference/connection-string/                                      โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : mongodb://localhost/?w=1&fsync=false                                              โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # uri                                                 mongodb://localhost/?w=1&fsync=false

    # โ”€โ”€โ”€ Which database contains events data                                                               โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : event_container                                                                   โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # database                                            event_container

    # โ”€โ”€โ”€ username/password to authenticate to MongoDB.                                                     โ”€โ”€โ”€
    # โ”€โ”€โ”€ Both parameters must be provided for authentication to function correctly.                        โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # broker__module_event_manager_writer__database__username

    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # broker__module_event_manager_writer__database__password

  ย  # โ”€โ”€โ”€ SSH tunnel activation to secure your mongodb connection                                           โ”€โ”€โ”€
    # โ”€โ”€โ”€ That will allow all mongodb to be encrypted & authenticated with SSH                              โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           ...     : Enable  => 1 ( enable ssh tunnel )                                                โ”€โ”€โ”€
    #           Default : Disable => 0 ( disable ssh tunnel )                                               โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # use_ssh_tunnel                                      0

    # โ”€โ”€โ”€ If the SSH connection goes wrong, then retry use_ssh_retry_failure time before_shinken_inactive   โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 1 ( try )                                                                         โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # use_ssh_retry_failure                               1

    # โ”€โ”€โ”€ SSH user to connect to the mongodb server.                                                        โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : shinken                                                                           โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # ssh_user                                            shinken

    # โ”€โ”€โ”€ SSH keyfile to connect to the mongodb server.                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : ~shinken/.ssh/id_rsa                                                              โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # ssh_keyfile                                         ~shinken/.ssh/id_rsa

    # โ”€โ”€โ”€ SSH Timeout used to test if the SSH tunnel is viable or not, in seconds.                          โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 10 ( seconds )                                                                    โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # ssh_tunnel_timeout                                  10

    # โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€  AutoReconnect Management  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ #

    # โ”€โ”€โ”€ When MongoDB require you to reconnect ( For example, It can occur when a new PRIMARY is elected   โ”€โ”€โ”€
    # โ”€โ”€โ”€ in a MongoDB cluster ), it will raised the MongoDB AutoReconnect exception.                       โ”€โ”€โ”€

    # โ”€โ”€โ”€ How many try to reconnect before module go in error                                               โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 4 ( try )                                                                         โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # auto_reconnect_max_try                              4

    # โ”€โ”€โ”€ Time between each try                                                                             โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 3 ( seconds )                                                                     โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # auto_reconnect_sleep_between_try                    3

    # โ”€โ”€โ”€ NOTE: Change these values only if you have a MongoDB cluster and you change the                   โ”€โ”€โ”€
    # โ”€โ”€โ”€       heartbeatTimeoutSecs of your MongoDB replica set                                            โ”€โ”€โ”€
    # โ”€โ”€โ”€       The value of auto_reconnect_max_try * auto_reconnect_sleep_between_try must be higher than  โ”€โ”€โ”€
    # โ”€โ”€โ”€       heartbeatTimeoutSecs in the rs.conf(); of your MongoDB replica set.                         โ”€โ”€โ”€

    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    WORKERS IN THE BROKER    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€ This module will use workers in the broker, each worker will manage a shard of all hosts/checks.  โ”€โ”€โ”€
    # โ”€โ”€โ”€ This parameter is used by the broker to set the number of workers.                                โ”€โ”€โ”€
    # โ”€โ”€โ”€ Each worker will use one CPU, which will balance the event processing load among CPUs.            โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 1 ( worker )                                                                      โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # broker_module_nb_workers                            1

    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    INTERNAL OPTIONS    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€ INTERNAL : DO NOT EDIT FOLLOWING PARAMETER WITHOUT YOUR DEDICATED SUPPORT                         โ”€โ”€โ”€

    # โ”€โ”€โ”€ Broker idle time before considering that Shinken is inactive.                                     โ”€โ”€โ”€
    # โ”€โ”€โ”€ Use this if you have Broker loop time that exceeds 30 seconds                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : 30 ( seconds )                                                                    โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # time_before_shinken_inactive                        30

}

Dรฉtails des sections composant le fichier de configuration

Identification du module

Il est possible de dรฉfinir plusieurs instances de module de type "event-manager-writer" dans l'architecture Shinken.

  • Chaque instance devra avoir un nom unique.
Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
module_name 
Texte---event-manager-writer

Il est conseillรฉ de choisir un nom en fonction de l'utilisation du module pour que la configuration soit simple ร  maintenir.

Doit รชtre unique.

No Format
module_typeย 
Texte---event_containerNe dois pas รชtre modifiรฉ.

Taille du bac d'รฉvรฉnement en nombre de jours

Code Block
languagejs
themeConfluence
 ย  ย # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    MODULE OPTIONS    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #
 
    # โ”€โ”€โ”€ Number of day the events are kept in database                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 30 ( days )                                                                        โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # day_keep_data                                       30

Le paramรจtre "day_keep_data" permet de choisir le nombre de jours qu'un รฉvรฉnement sera gardรฉ dans la base.

  • Si la base MongoDB prend trop de place sur le disque, cela peut รชtre monitorer avec le modรจle d'hรดte : Modรจle shinken-broker-module-event-manager-writer ( voir la pageย Modรจle shinken-broker-module-event-manager-writer ).
  • Il est possible de diminuer le nombre de jours sauvegardรฉs.


Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
day_keep_data
Entierjour30

Durรฉe en nombre de jours d'un รฉvรฉnement dans le bac ร  รฉvรฉnement.

Accรจs ร  la base MongoDB

Cette configuration s'effectue dans le fichier de configuration du module.

Pour se connecter ร  la base MongoDB utilisรฉ pour le stockage des donnรฉes, 2 mรฉthodes sont disponibles :

  • Connexion directe :ย Par dรฉfaut, mais non sรฉcurisรฉe.
  • Tunnel SSH :ย Shinken se connecte ร  la base MongoDB au travers d'un module SSH pour plus de sรฉcuritรฉ
Configuration
des paramรจtres communs aux deux mรฉthodes
de l'URI de connexion et de l'authentification par mot de passe
Code Block
languagejs
themeConfluence
    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    DATABASE CONNECTION    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #

    # โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€  MongoDB parameters  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ #

    # โ”€โ”€โ”€ MongoDB uri definition . You can find the mongodb uri syntax at                                   โ”€โ”€โ”€
    # โ”€โ”€โ”€ https://docs.mongodb.com/manual/reference/connection-string/                                      โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : mongodb://localhost/?w=1&fsync=false                                              โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # uri                                                 mongodb://localhost/?w=1&fsync=false

    # โ”€โ”€โ”€ Which database contains events data                                                               โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #           Default : event_container                                                                   โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # database                                            event_container ย 

    # โ”€โ”€โ”€ username/password to authenticate to MongoDB.                                                     โ”€โ”€โ”€
    # โ”€โ”€โ”€ Both parameters must be provided for authentication to function correctly.                        โ”€โ”€โ”€
    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # broker__module_event_manager_writer__database__username

    # โ”€โ”€โ”€                                                                                                   โ”€โ”€โ”€
    # broker__module_event_manager_writer__database__password
Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
 uri 
TexteURLmongodb://localhost/?safe=true

La description de la syntaxe de l'URI de MongoDB est disponible ร  l'adresse suivante https://docs.mongodb.com/manual/reference/connection-string/

No Format
 database 
Texte---shinken

Nom de la base de donnรฉes oรน sont stockรฉes les donnรฉes รฉvรฉnements.

No Format
broker__module_event_manager_writer__database__username 
Texte---

Utilisateur pour l'authentification avec mot de passe ร  la base MongoDB.

Utile uniquement si l'activation par mot de passe a รฉtรฉ activรฉ (ย voir la page MongoDB - activation de l'authentification par mot de passeย )

No Format
broker__module_event_manager_writer__database__password 
Texte---

Mot de passe de l'utilisateur utilisรฉ pour l'authentification avec mot de passe ร  la base MongoDB.

Utile uniquement si l'activation par mot de passe a รฉtรฉ activรฉ (ย voir la page MongoDB - activation de l'authentification par mot de passeย )

Connexion directe au serveur MongoDB

Par dรฉfaut, le module se connecte de maniรจre directe ร  la base MongoDB pour y lire et รฉcrire les donnรฉes.
Dans la configuration du module, ceci correspond au paramรจtre "use_ssh_tunnel" ร  0.
C'est la mรฉthode de connexion par dรฉfaut lorsque la base est sur la mรชme machine que le dรฉmon ( quand l'URL de la base est localhost ).

Si la base est sur une autre machine, il faudra alors se connecter ร  la base via un tunnel SSH. Cela permet ร  la base distance de rester en รฉcoute rรฉseau sur l'interface rรฉseau local, ce qui la sรฉcurise des accรจs extรฉrieurs ( voir la pageSรฉcurisation des connexions aux bases MongoDB ).

Connexion par SSH au serveur MongoDB
Code Block
languagejs
themeConfluence
 ย  ย # โ”€โ”€โ”€ SSH tunnel activation to secure your mongodb connection                                           โ”€โ”€โ”€
    # โ”€โ”€โ”€ That will allow all mongodb to be encrypted & authenticated with SSH                              โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          ...     : Enable  => 1 ( enable ssh tunnel )                                                 โ”€โ”€โ”€
    #          Default : Disable => 0 ( disable ssh tunnel )                                                โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # use_ssh_tunnel                                      0
 
    # โ”€โ”€โ”€ If the SSH connection goes wrong, then retry use_ssh_retry_failure time before_shinken_inactive   โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 1 ( try )                                                                          โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # use_ssh_retry_failure                               1
 
    # โ”€โ”€โ”€ SSH user to connect to the mongodb server.                                                        โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : shinken                                                                            โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # ssh_user                                            shinken
 
    # โ”€โ”€โ”€ SSH keyfile to connect to the mongodb server.                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : ~shinken/.ssh/id_rsa                                                               โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # ssh_keyfile                                         ~shinken/.ssh/id_rsa
 
    # โ”€โ”€โ”€ SSH Timeout used to test if the SSH tunnel is viable or not, in seconds.                          โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 10 ( seconds )                                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # ssh_tunnel_timeout                                  10
Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
use_ssh_tunnel
Boolรฉen---0
  • 1 : Connexion par tunnel SSH.
  • 0 : Connexion directe.
No Format
use_ssh_retry_failure
EntierNombre d'essais1

Spรฉcifie le nombre supplรฉmentaire de tentatives lors de l'รฉtablissement du tunnel SSH si ce dernier n'arrive pas ร  รชtre รฉtabli.

No Format
ssh_user
TexteUtilisateur unixshinkenL'utilisateur avec lequel le tunnel sera รฉtabli.
No Format
ssh_keyfile
TexteChemin de fichier~shinken/.ssh/id_rsaย La clรฉ SSH privรฉe prรฉsente sur le serveur Shinken qui sera utilisรฉ pour รฉtablir le tunnel.
No Format
ssh_tunnel_timeout
EntierSeconde10Spรฉcifie le timeout en secondes de la vรฉrification du tunnel SSH avant que la connexion vers MongoDB soit effectuรฉe.
Gestion de l'auto-reconnexion
avec un cluster MongoDB
Code Block
languagejs
themeConfluence
 ย  ย # โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€  AutoReconnect Management  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
 
    # โ”€โ”€โ”€ When MongoDB require you to reconnect ( For example, It can occur when a new PRIMARY is elected   โ”€โ”€โ”€
    # โ”€โ”€โ”€ in a MongoDB cluster ), it will raised the MongoDB AutoReconnect exception.                       โ”€โ”€โ”€
 
    # โ”€โ”€โ”€ How many try to reconnect before module go in error                                               โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 4 ( try )                                                                          โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # auto_reconnect_max_try                              4
 
    # โ”€โ”€โ”€ Time between each try                                                                             โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 3 ( seconds )                                                                      โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # auto_reconnect_sleep_between_try                    3
 
    # โ”€โ”€โ”€ NOTE: Change these values only if you have a MongoDB cluster and you change the                   โ”€โ”€โ”€
    # โ”€โ”€โ”€       heartbeatTimeoutSecs of your MongoDB replica set                                            โ”€โ”€โ”€
    # โ”€โ”€โ”€       The value of auto_reconnect_max_try * auto_reconnect_sleep_between_try must be higher than  โ”€โ”€โ”€
    # โ”€โ”€โ”€       heartbeatTimeoutSecs in the rs.conf(); of your MongoDB replica set. ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  ย  โ”€โ”€โ”€
Info
titleDรฉfinitions
  • Primaire: nom de MongoDB pour dรฉsigner un serveur maรฎtre, le serveur sur lequel il est possible de faire des requรชtes d'รฉcriture dans la base.ย 
  • Election : processus de MongoDB pour choisir un nouveau membre Primaire si le membre Primaire devient inaccessibleย 

( voir la page Haute disponibilitรฉ de la base MongoDB (mise en place d'un cluster) )


Dans le cas de l'utilisation d'un cluster MongoDB, lorsque le membre Primaire devient inaccessible, une nouvelle รฉlection est dรฉclenchรฉe, ce qui provoque une coupure temporaire de l'accรจs ร  la base.

Dans le but de ne pas interrompre le service, le module "event-manager-reader" va se reconnecter automatiquement au cluster MongoDB.
Pour ce faire, il va faire un nombre d'essais รฉgaux au paramรจtreย "auto_reconnect_max_try " avec une pause de X secondes entre chaque essai ( correspondant au paramรจtre "auto_reconnect_sleep_between_try" ).

Par dรฉfaut pour MongoDB le temps maximum avant qu'un membre Primaire soit considรฉrรฉ comme indisponible et qu'une nouvelle รฉlection ait lieu est de 10 secondes.
Voir : "heartbeatTimeoutSecs" donnรฉ par la commande rs.conf(); dans un shell de MongoDB.


Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
auto_reconnect_max_try
EntierNombre d'essais4Nombre d'essais de reconnexion ร  la base.
No Format
auto_reconnect_sleep_between_try
EntierSeconde3

Temps entre chaque essai.


Les valeurs par dรฉfauts du fichier laisse 12 secondes, ce qui est amplement suffisant avec la configuration par dรฉfaut de MongoDB.


Warning

Il est conseillรฉ de ne pas modifier ces valeurs.

Utilisation des workers du module event-manager-writer

Code Block
languagejs
themeConfluence
    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    WORKERS IN THE BROKER    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #
 
    # โ”€โ”€โ”€ This module will use workers in the broker, each worker will manage a shard of all hosts/checks.  โ”€โ”€โ”€
    # โ”€โ”€โ”€ This parameter is used by the broker to set the number of workers.                                โ”€โ”€โ”€
    # โ”€โ”€โ”€ Each worker will use one CPU, which will balance the event processing load among CPUs.            โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 1 ( worker )                                                                       โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # broker_module_nb_workers                            1

Le paramรจtre "broker_module_nb_workers" va dรฉterminer combien de fois le module va se cloner pour gรฉrer le flux de donnรฉe ร  enregistrer afin de repartir cette charge sur plusieurs CPU.

Il est possible de changer ce paramรจtre si lโ€™utilisation CPU du processus : "NOM DU BROKER [ - Module: event-manager-writer ][ Worker: 0 ]" est trop รฉlevรฉ.

Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
broker_module_nb_workers
Entierworker1

Nombre de workers qui traitent le flux de donnรฉe pour sauvegarder les รฉvรฉnements dans la base MongoDB ( le traitement est rรฉparti sur les workers ).

Info

Ne pas dรฉpasser le nombre de core cpu de la machine : cela serait contre-productif pour les performances.

Options internes

No Format
    # โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” #
    # โ”‚ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€    INTERNAL OPTIONS    โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚ #
    # โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ #
 
    # โ”€โ”€โ”€ INTERNAL : DO NOT EDIT FOLLOWING PARAMETER WITHOUT YOUR DEDICATED SUPPORT                         โ”€โ”€โ”€
 
    # โ”€โ”€โ”€ Broker idle time before considering that Shinken is inactive.                                     โ”€โ”€โ”€
    # โ”€โ”€โ”€ Use this if you have Broker loop time that exceeds 30 seconds                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    #          Default : 30 ( seconds )                                                                     โ”€โ”€โ”€
    #                                                                                                       โ”€โ”€โ”€
    # time_before_shinken_inactive                        30
Warning

Ces paramรจtres sont dรฉdiรฉs au fonctionnement interne au module, il est fortement recommandรฉ de ne pas les modifier sans le support dรฉdiรฉ.ย 

Scroll Title
anchorparameter_cfg
titleโ€‹
NomTypeUnitรฉDรฉfautCommentaireDescription
No Format
 time_before_shinken_inactive 
EntierSeconde30

Temps d'inactivitรฉ du Broker avant de considรฉrer que Shinken est inactif.

Utilisez cette option si le temps de boucle du Broker dรฉpasse 30 secondes.