Description

Le module event-manager-reader est un module qui permet au module WebUI ( l'interface de visualisation ) du broker d'afficher le bac à événements.

  • Il récupère les événements en base de donnée des événements.
  • Il doit donc être listé dans la liste des modules du module WebUI ( cf Module WebUI, propriété "modules" )

Pour que la fonctionnalité bac à événement apparaisse dans l'interface, il faut absolument que ce module soit activé.


Si vous avez plusieurs configurations de web-ui présente dans votre architecture, n'oubliez pas d'activer le module dans chaque configuration

  • Ex plusieurs WebUI sur le même broker
  • ou une sur différents Brokers qui n'utilise pas la même définition.


Configuration .cfg


#===============================================================================
# event manager
#===============================================================================
# Modules that can load this module:
# - WebUI (to display events data to the users)
# This module read event from database to show you in the WebUI
#===============================================================================


define module {

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────────    MODULE IDENTITY    ────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Module name [ Must be unique ]                                                      [ MANDATORY ] ───
    module_name                                         event-manager-reader

    # ─── Module type [ Do not edit ]                                                         [ MANDATORY ] ───
    module_type                                         event_container

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ────────────────────────────────────    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

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

    # ─── If the SSH connection goes wrong, then retry use_ssh_retry_failure time before_shinken_inactive   ───
    # >>> Enable  : 1 ( with ssh tunnel ) ( Default )                                                       ───
    # ─── Disable : 0 ( direct connection )                                                                 ───
    # 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 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.                         ───

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────    VISUALISATION UI    ────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Specify the max retries when the Visualisation UI can't communicate with the event_manager_reader ───
    # ─── during the Excel export.                                                                          ───
    # ─── Increase this parameter when users encounter difficulties when generating the Excel export        ───
    # ─── of events. This will make the export more tolerant to network loss or database slowness,          ───
    # ─── or restart of the broker.                                                                         ───
    # ─── The value cannot be 0.                                                                            ───
    # >>> Default : 2 ( try )                                                                               ───
    # broker__module_webui__module_event_manager_reader__events_export__max_retry 2

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────    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

}