Plugin MongoDB

Vue d'ensemble

Les paramètres de configuration permettent de personnaliser le comportement du plugin MongoDB.

Il est recommandé de les spécifier dans leur propre fichier de configuration (par exemple mongodb.conf), plutôt que dans le fichier de configuration de l'agent 2. Utilisez ensuite la directive Include pour inclure ce fichier dans la configuration de Zabbix agent 2.

Le plugin MongoDB est un plugin chargeable et est disponible, avec une description complète, dans le dépôt du plugin MongoDB.

Tous les paramètres sont facultatifs, sauf indication explicite précisant que le paramètre est obligatoire.

Notez que :

  • Les valeurs par défaut reflètent les valeurs par défaut du processus, et non celles des fichiers de configuration fournis.
  • Les valeurs prennent en charge les variables d'environnement.
  • Zabbix prend en charge les fichiers de configuration uniquement en encodage UTF-8, sans BOM.
  • Les commentaires commençant par "#" ne sont pris en charge qu'au début de la ligne.

Parameter details

Plugins.MongoDB.Default.AuthMechanism

Specify the default authentication mechanism for connecting to MongoDB server.
<SessionName> - define name of a session for using in item keys.

Range: SCRAM-SHA-1, SCRAM-SHA-256, or MONGODB-X509

Plugins.MongoDB.Default.AuthSource

Specify the default database for authenticating connection to MongoDB server.
<SessionName> - define name of a session for using in item keys.

Default: admin

If MONGODB-X509 authentication mechanism is used, this parameter is automatically set to $external; modifying it to any other value will cause an error when launching.

Plugins.MongoDB.Default.Direct

Disable automatic discovery of MongoDB replica set nodes.
<SessionName> - define name of a session for using in item keys.

Default: false Range: true - connect only to the specified server, ignoring other members of the replica set, false - automatically discover all nodes in the replica set.

If the tcp:// (deprecated) scheme is used, the parameter is set to true by default.

Plugins.MongoDB.Default.Password

Specify the default password.
<SessionName> - define name of a session for using in item keys.

Plugins.MongoDB.Default.ReplicaSet

Specify the default replica set name, used for automatic discovery of MongoDB replica set nodes.
<SessionName> - define name of a session for using in item keys.
If this parameter is used with the mongodb+srv:// scheme, it will behave as if multiple URLs have been provided; a DNS server may have a TXT record that can override this (or any other) parameter.
Unavailable if the Plugins.MongoDB.Sessions.<SessionName>.Direct parameter is set to true; the agent will fail to start.

Plugins.MongoDB.Default.ReadPreference

Specify the default order for connecting to MongoDB replica set nodes or fallback.
<SessionName> - define name of a session for using in item keys.
Unavailable if the Plugins.MongoDB.Sessions.<SessionName>.Direct parameter is set to true; the agent will fail to start.

Range: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode, or NearestMode

Plugins.MongoDB.Default.TLSConnect

Specify the level of encryption required for communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.
Supported since plugin version 1.2.1.

Range: required - require TLS connection, verify_ca - verify certificates, verify_full - verify certificates and IP address

Plugins.MongoDB.Default.TLSCAFile

Specify full pathname of the file containing the top-level CA(s) certificates for peer certificate verification, used for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to verify_ca or verify_full

Plugins.MongoDB.Default.TLSCertFile

Specify full pathname of the file containing the agent certificate or certificate chain, used for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified

Plugins.MongoDB.Default.TLSKeyFile

Specify full pathname of the file containing the database private key, used for encrypted communications between Zabbix agent 2 and monitored databases.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified

Plugins.MongoDB.Default.Uri

Specify the default URI.
<SessionName> - define name of a session for using in item keys.
Must match the URI format.
Supported schemes: mongodb:// and mongodb+srv://; the tcp:// scheme is deprecated and kept for backward compatibility with existing configurations.
A port can be omitted (default=27017).
Examples: ``

Default: tcp://127.0.0.1:27017

Examples:

mongodb://127.0.0.1:27017
mongodb+srv://example.com
localhost
Plugins.MongoDB.Default.User

Specify the default username.
<SessionName> - define name of a session for using in item keys.

Plugins.MongoDB.KeepAlive

Set the maximum time of waiting (in seconds) before unused plugin connections are closed.

Default: 300 Range: 60-900

Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism

Specify the named session authentication mechanism for connecting to MongoDB server.
<SessionName> - define name of a session for using in item keys.

Range: SCRAM-SHA-1, SCRAM-SHA-256, or MONGODB-X509

Plugins.MongoDB.Sessions.<SessionName>.AuthSource

Specify the named session database for authenticating connection to MongoDB server.
<SessionName> - define name of a session for using in item keys.

Default: admin

If MONGODB-X509 authentication mechanism is used, this parameter is automatically set to $external; modifying it to any other value will cause an error when launching.

Plugins.MongoDB.Sessions.<SessionName>.Direct

Disable automatic discovery of MongoDB replica set nodes for named session.
<SessionName> - define name of a session for using in item keys.

Default: false Range: true - connect only to the specified server, ignoring other members of the replica set, false - automatically discover all nodes in the replica set.

If the tcp:// (deprecated) scheme is used, the parameter is set to true by default.

Plugins.MongoDB.Sessions.<SessionName>.Password

Specify the named session password.
<SessionName> - define name of a session for using in item keys.

Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet

Specify the named session replica set name, used for automatic discovery of MongoDB replica set nodes.
<SessionName> - define name of a session for using in item keys.
If this parameter is used with the mongodb+srv:// scheme, it will behave as if multiple URLs have been provided; a DNS server may have a TXT record that can override this (or any other) parameter.
Unavailable if the Plugins.MongoDB.Sessions.<SessionName>.Direct parameter is set to true; the agent will fail to start.

Plugins.MongoDB.Sessions.<SessionName>.ReadPreference

Specify the named session order for connecting to MongoDB replica set nodes or fallback.
<SessionName> - define name of a session for using in item keys.
Unavailable if the Plugins.MongoDB.Sessions.<SessionName>.Direct parameter is set to true; the agent will fail to start.

Range: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode, or NearestMode

Plugins.MongoDB.Sessions.<SessionName>.TLSConnect

Specify the level of encryption required for communications between Zabbix agent 2 and monitored databases for named session.
<SessionName> - define name of a session for using in item keys.
Supported since plugin version 1.2.1.

Range: required - require TLS connection, verify_ca - verify certificates, verify_full - verify certificates and IP address

Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile

Specify full pathname of the file containing the top-level CA(s) certificates for peer certificate verification, used for encrypted communications between Zabbix agent 2 and monitored databases for named session.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to verify_ca or verify_full

Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Specify full pathname of the file containing the agent certificate or certificate chain, used for encrypted communications between Zabbix agent 2 and monitored databases for named session.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified

Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Specify full pathname of the file containing the database private key, used for encrypted communications between Zabbix agent 2 and monitored databases for named session.
<SessionName> - define name of a session for using in item keys.

Mandatory: yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified

Plugins.MongoDB.Sessions.<SessionName>.Uri

Specify the named session URI.
<SessionName> - define name of a session for using in item keys.
Must match the URI format.
Supported schemes: mongodb:// and mongodb+srv://; the tcp:// scheme is deprecated and kept for backward compatibility with existing configurations.
A port can be omitted (default=27017).
Examples: ``

Default: tcp://127.0.0.1:27017

Examples:

mongodb://127.0.0.1:27017
mongodb+srv://example.com
localhost
Plugins.MongoDB.Sessions.<SessionName>.User

Specify the named session username.
<SessionName> - define name of a session for using in item keys.

Plugins.MongoDB.System.Path

Specify path to the MongoDB plugin executable.

Example usage: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb

Plugins.MongoDB.Timeout

Set the request execution timeout (the duration, in seconds, to wait for a request to complete before shutting it down).

Default: global timeout Range: 1-30

Options

Parameter Description
-V --version Afficher la version du plugin et les informations de licence.
-h --help Afficher les informations d'aide (raccourci).
-t, --test <item key> Lancer le plugin pour un test (la configuration du plugin est ignorée).

Paramètres

Lors de la connexion à MongoDB, le plugin vérifie sa configuration dans un ordre spécifique, qui détermine quelle valeur utiliser. L'ordre, de la priorité la plus élevée à la plus faible, est le suivant :

  1. Paramètres spécifiés dans l'URI de connexion (par exemple, les paramètres de requête définis après ? dans Plugins.MongoDB.Sessions.<session_name>.Uri ont la priorité la plus élevée).
  2. Paramètres dans la clé d'élément de l'agent Zabbix 2 (par exemple, mongodb.collection.stats).
  3. Paramètres définis dans une session nommée (par exemple, Plugins.MongoDB.Sessions.<SessionName>.User, Plugins.MongoDB.Sessions.<SessionName>.Password).
  4. Valeurs par défaut (par exemple, Plugins.MongoDB.Default.User, Plugins.MongoDB.Default.Password).

Par exemple :

  • Si vous spécifiez la base de données pour l'authentification d'une connexion au serveur MongoDB dans le paramètre *.<SessionName>.Uri (par exemple, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), le plugin considérera que le paramètre *.<SessionName>.AuthSource est défini sur admin, même si le paramètre *.<SessionName>.AuthSource est défini sur une autre valeur.
  • Si vous spécifiez l'URI dans le paramètre *.<SessionName>.Uri (par exemple, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), mais fournissez le nom d'utilisateur et le mot de passe dans la clé d'élément de l'agent Zabbix 2, le plugin utilisera le nom d'utilisateur et le mot de passe de la clé d'élément, même si Plugins.MongoDB.Sessions.<SessionName>.User et Plugins.MongoDB.Sessions.<SessionName>.Password sont configurés.

Si le schéma mongodb+srv:// est utilisé, l'URI peut récupérer des paramètres à partir d'un enregistrement DNS TXT. Les paramètres obtenus à partir de cet enregistrement TXT remplacent toutes les autres configurations, y compris les paramètres de l'URI, les paramètres de la clé d'élément de l'agent Zabbix 2 et les paramètres de session.
Un seul enregistrement TXT peut exister pour le nom d'hôte utilisé dans la chaîne de connexion.

Parameter Mandatory Range Default Description
Plugins.MongoDB.System.Path no Chemin vers l'exécutable du plugin MongoDB.
Exemple d'utilisation : Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb
Plugins.MongoDB.Timeout no 1-30 global timeout Délai d'exécution de la requête (durée, en secondes, pendant laquelle attendre qu'une requête se termine avant de l'interrompre).
Plugins.MongoDB.KeepAlive no 60-900 300 Temps d'attente maximal (en secondes) avant la fermeture des connexions inutilisées du plugin.
Plugins.MongoDB.Sessions.<SessionName>.Uri no tcp://127.0.0.1:27017 Chaîne de connexion d'une session nommée.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Doit correspondre au format URI.
Schémas pris en charge : mongodb:// et mongodb+srv://; le schéma tcp:// est obsolète et conservé pour la compatibilité ascendante avec les configurations existantes.
Un port peut être omis (par défaut=27017).
Exemples : mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost.
Plugins.MongoDB.Sessions.<SessionName>.User no Nom d'utilisateur de la session nommée.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.
Plugins.MongoDB.Sessions.<SessionName>.Password no Mot de passe de la session nommée.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.
Plugins.MongoDB.Sessions.<SessionName>.Direct no false Méthode de connexion utilisée pour déterminer si la découverte automatique des nœuds du jeu de réplicas MongoDB doit être activée ou désactivée.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Valeurs prises en charge :
true - le plugin se connectera uniquement au serveur spécifié, en ignorant les autres membres du jeu de réplicas ;
false - le plugin découvrira automatiquement tous les nœuds du jeu de réplicas.
Si le schéma tcp:// (obsolète) est utilisé, le paramètre est défini sur true par défaut.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism no Mécanisme d'authentification pour la connexion au serveur MongoDB.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Valeurs prises en charge : SCRAM-SHA-1, SCRAM-SHA-256 et MONGODB-X509.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource no admin Base de données pour l'authentification de la connexion au serveur MongoDB.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Si le mécanisme d'authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external ; le modifier vers une autre valeur provoquera une erreur au lancement.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet no Nom du jeu de réplicas, utilisé pour la découverte automatique des nœuds du jeu de réplicas MongoDB.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Si ce paramètre est utilisé avec le schéma mongodb+srv://, il se comportera comme si plusieurs URL avaient été fournies ; un serveur DNS peut avoir un enregistrement TXT qui peut remplacer ce paramètre (ou tout autre paramètre).

Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true, l'agent ne démarrera pas.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference no Ordre de connexion aux nœuds du jeu de réplicas MongoDB ou de repli.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Valeurs prises en charge : PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode et NearestMode.
Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true, l'agent ne démarrera pas.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect no Type de chiffrement pour les communications entre l'agent Zabbix 2 et les bases de données surveillées.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Valeurs prises en charge :
required - exige une connexion TLS ;
verify\_ca - vérifie les certificats ;
verify\_full - vérifie les certificats et l'adresse IP.

Pris en charge depuis la version 1.2.1 du plugin.
Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full Chemin complet d'un fichier contenant le ou les certificats de l'AC racine pour la vérification du certificat du pair, utilisé pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.
Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified Chemin complet d'un fichier contenant le certificat de l'agent ou la chaîne de certificats, utilisé pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.
Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified Chemin complet d'un fichier contenant la clé privée de la base de données utilisée pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.
Plugins.MongoDB.Default.Uri no tcp://127.0.0.1:27017 URI par défaut pour la connexion à MongoDB.

Doit correspondre au format URI.
Schémas pris en charge : mongodb:// et mongodb+srv://.
Schéma obsolète : tcp:// (utilisé par défaut pour la compatibilité ascendante avec les configurations existantes).
Un port peut être omis (par défaut=27017).
Exemples : mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost.
Plugins.MongoDB.Default.User no Nom d'utilisateur par défaut pour la connexion à MongoDB.
Plugins.MongoDB.Default.Password no Mot de passe par défaut pour la connexion à MongoDB.
Plugins.MongoDB.Default.Direct no false Méthode de connexion par défaut utilisée pour déterminer si la découverte automatique des nœuds du jeu de réplicas MongoDB doit être activée ou désactivée.

Valeurs prises en charge :
true - le plugin se connectera uniquement au serveur spécifié, en ignorant les autres membres du jeu de réplicas ;
false - le plugin découvrira automatiquement tous les nœuds du jeu de réplicas.
Si le schéma tcp:// (obsolète) est utilisé, le paramètre est défini sur true par défaut.
Plugins.MongoDB.Default.AuthMechanism no Mécanisme d'authentification par défaut pour la connexion au serveur MongoDB.

Valeurs prises en charge : SCRAM-SHA-1, SCRAM-SHA-256 et MONGODB-X509.
Si aucune valeur n'est spécifiée ici, dans une clé d'élément, dans une session nommée ou dans l'URI, un mécanisme basé sur SCRAM est utilisé (si un nom d'utilisateur est fourni ; sinon, aucune authentification ne sera utilisée).
Plugins.MongoDB.Default.AuthSource no admin Base de données par défaut pour l'authentification de la connexion au serveur MongoDB.

Si le mécanisme d'authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external ; le modifier vers une autre valeur provoquera une erreur au lancement.
Plugins.MongoDB.Default.ReplicaSet no Nom par défaut du jeu de réplicas ; utilisé pour la découverte automatique des nœuds du jeu de réplicas MongoDB.

Si ce paramètre est utilisé avec le schéma mongodb+srv://, il se comportera comme si plusieurs URL avaient été fournies ; un serveur DNS peut avoir un enregistrement TXT qui peut remplacer ce paramètre (ou tout autre paramètre).
Indisponible si le paramètre Plugins.MongoDB.Default.Direct est défini sur true, l'agent ne démarrera pas.
Plugins.MongoDB.Default.ReadPreference no Ordre par défaut de connexion aux nœuds du jeu de réplicas MongoDB ou de repli.

Valeurs prises en charge : PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode et NearestMode.
Indisponible si le paramètre Plugins.MongoDB.Default.Direct est défini sur true, l'agent ne démarrera pas.
Plugins.MongoDB.Default.TLSConnect no Type de chiffrement par défaut pour les communications entre l'agent Zabbix 2 et les bases de données surveillées.

Valeurs prises en charge :
required - exige une connexion TLS.
verify\_ca - vérifie les certificats.
verify\_full - vérifie les certificats et l'adresse IP.
Si aucune valeur n'est spécifiée ici, dans une clé d'élément, dans une session nommée ou dans l'URI, aucune connexion TLS ne sera établie.
Plugins.MongoDB.Default.TLSCAFile no Chemin par défaut d'un fichier contenant le ou les certificats de l'AC racine pour la vérification du certificat du pair. Utilisé pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.
Plugins.MongoDB.Default.TLSCertFile no Chemin par défaut d'un fichier contenant le certificat client MongoDB ou la chaîne de certificats. Utilisé pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.
Plugins.MongoDB.Default.TLSKeyFile no Chemin par défaut d'un fichier contenant la clé privée du client MongoDB utilisée pour les communications chiffrées entre l'agent Zabbix 2 et les bases de données surveillées.

Voir aussi :