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.

Lors de la connexion à MongoDB, le plugin vérifie sa configuration dans un ordre spécifique, qui détermine la 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 Zabbix agent 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 Zabbix agent 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 Zabbix Agent 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.

Cette page est structurée comme suit :

  • Vue d'ensemble des paramètres (pour voir les détails complets d'un paramètre, cliquez sur son nom)
  • Détails des paramètres
Parameter Description
Plugins.MongoDB.Default.AuthMechanism Spécifier le mécanisme d'authentification par défaut pour la connexion au serveur MongoDB.
Plugins.MongoDB.Default.AuthSource Spécifier la base de données par défaut pour l'authentification de la connexion au serveur MongoDB.
Plugins.MongoDB.Default.Direct Désactiver la découverte automatique des nœuds du jeu de réplicas MongoDB.
Plugins.MongoDB.Default.Password Spécifier le mot de passe par défaut.
Plugins.MongoDB.Default.ReplicaSet Spécifier le nom par défaut du jeu de réplicas, utilisé pour la découverte automatique des nœuds du jeu de réplicas MongoDB.
Plugins.MongoDB.Default.ReadPreference Spécifier l'ordre par défaut pour la connexion aux nœuds du jeu de réplicas MongoDB ou en repli.
Plugins.MongoDB.Default.TLSConnect Spécifier le niveau de chiffrement requis pour les communications entre Zabbix agent 2 et les bases de données surveillées.
Plugins.MongoDB.Default.TLSCAFile Spécifier le chemin complet du fichier contenant les certificats des AC racines pour la vérification du certificat du pair.
Plugins.MongoDB.Default.TLSCertFile Spécifier le chemin complet du fichier contenant le certificat de l'agent ou la chaîne de certificats.
Plugins.MongoDB.Default.TLSKeyFile Spécifier le chemin complet du fichier contenant la clé privée de la base de données.
Plugins.MongoDB.Default.Uri Spécifier l'URI par défaut.
Plugins.MongoDB.Default.User Spécifier le nom d'utilisateur par défaut.
Plugins.MongoDB.KeepAlive Définir le temps d'attente maximal avant la fermeture des connexions inutilisées du plugin.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism Spécifier le mécanisme d'authentification de la session nommée pour la connexion au serveur MongoDB.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource Spécifier la base de données de la session nommée pour l'authentification de la connexion au serveur MongoDB.
Plugins.MongoDB.Sessions.<SessionName>.Direct Désactiver la découverte automatique des nœuds du jeu de réplicas MongoDB pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.Password Spécifier le mot de passe de la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet Spécifier le nom du jeu de réplicas de la session nommée, utilisé pour la découverte automatique des nœuds du jeu de réplicas MongoDB.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference Spécifier l'ordre de la session nommée pour la connexion aux nœuds du jeu de réplicas MongoDB ou en repli.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect Spécifier le niveau de chiffrement requis pour les communications entre Zabbix agent 2 et les bases de données surveillées pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile Spécifier le chemin complet du fichier contenant les certificats des AC racines pour la vérification du certificat du pair pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile Spécifier le chemin complet du fichier contenant le certificat de l'agent ou la chaîne de certificats pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile Spécifier le chemin complet du fichier contenant la clé privée de la base de données pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.Uri Spécifier l'URI de la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.User Spécifier le nom d'utilisateur de la session nommée.
Plugins.MongoDB.System.Path Spécifier le chemin vers l'exécutable du plugin.
Plugins.MongoDB.Timeout Définir le délai d'expiration d'exécution de la requête.

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.

Détails du paramètre

Plugins.MongoDB.Default.AuthMechanism

Spécifiez le mécanisme d'authentification par défaut pour la connexion au serveur MongoDB.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Plage: SCRAM-SHA-1, SCRAM-SHA-256 ou MONGODB-X509

Plugins.MongoDB.Default.AuthSource

Spécifiez la base de données par défaut pour l'authentification de la connexion au serveur MongoDB.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Par défaut: admin

Si le mécanisme d'authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external; le modifier à toute autre valeur provoquera une erreur au lancement.

Plugins.MongoDB.Default.Direct

Désactiver la découverte automatique des nœuds de l'ensemble de réplicas MongoDB.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Valeur par défaut: false
Plage: true - se connecter uniquement au serveur spécifié, en ignorant les autres membres de l'ensemble de réplicas, false - découvrir automatiquement tous les nœuds de l'ensemble 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.Password

Spécifiez le mot de passe par défaut.
<SessionName> - définissez le nom d'une session à utiliser dans les clés d'élément.

Plugins.MongoDB.Default.ReplicaSet

Spécifiez le nom par défaut 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 parviendra pas à démarrer.

Plugins.MongoDB.Default.ReadPreference

Spécifiez l'ordre par défaut pour la connexion aux nœuds d'un ensemble répliqué MongoDB ou pour le repli.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.
Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true; l'agent ne pourra pas démarrer.

Plage : PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode ou NearestMode

Plugins.MongoDB.Default.TLSConnect

Spécifiez le niveau de chiffrement requis pour les communications entre Zabbix agent 2 et les bases de données surveillées.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.
Pris en charge depuis la version 1.2.1 du plugin.

Plage : required - exige une connexion TLS, verify_ca - vérifie les certificats, verify_full - vérifie les certificats et l'adresse IP

Plugins.MongoDB.Default.TLSCAFile

Spécifiez le chemin complet du fichier contenant le ou les certificats CA de niveau supérieur pour la vérification du certificat du pair, utilisés pour les communications chiffrées entre l'agent 2 Zabbix et les bases de données surveillées.
<SessionName> - définissez le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSConnect est défini sur verify_ca ou verify_full

Plugins.MongoDB.Default.TLSCertFile

Spécifiez le chemin complet du fichier contenant le certificat de l'agent ou la chaîne de certificats, utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile est spécifié

Plugins.MongoDB.Default.TLSKeyFile

Spécifiez le chemin d'accès complet du fichier contenant la clé privée de la base de données, utilisée pour les communications chiffrées entre l'agent 2 Zabbix et les bases de données surveillées.
<SessionName> - définissez le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile est spécifié

Plugins.MongoDB.Default.Uri

Spécifiez l'URI par défaut.
<SessionName> - définit 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: ``

Par défaut: tcp://127.0.0.1:27017

Exemples:

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

Spécifiez le nom d'utilisateur par défaut.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Plugins.MongoDB.KeepAlive

Définit le temps d'attente maximal (en secondes) avant la fermeture des connexions de plugin inutilisées.

Par défaut: 300
Plage: 60-900

Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism

Spécifiez le mécanisme d'authentification de la session nommée pour la connexion au serveur MongoDB.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Plage: SCRAM-SHA-1, SCRAM-SHA-256 ou MONGODB-X509

Plugins.MongoDB.Sessions.<SessionName>.AuthSource

Spécifiez la base de données de session nommée pour l’authentification de la connexion au serveur MongoDB.
<SessionName> - définit le nom d’une session à utiliser dans les clés d’élément.

Par défaut : admin

Si le mécanisme d’authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external ; le modifier à toute autre valeur provoquera une erreur au lancement.

Plugins.MongoDB.Sessions.<SessionName>.Direct

Désactiver la découverte automatique des nœuds du jeu de réplicas MongoDB pour la session nommée.
<SessionName> - définir le nom d'une session à utiliser dans les clés d'élément.

Par défaut: false
Plage: true - se connecter uniquement au serveur spécifié, en ignorant les autres membres du jeu de réplicas, false - découvrir 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>.Password

Spécifie le mot de passe de la session nommée.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet

Spécifie le nom de l'ensemble de réplicas de la session nommée, utilisé pour la découverte automatique des nœuds de l'ensemble de réplicas MongoDB.
<SessionName> - définit 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

Spécifiez l'ordre de session nommé pour la connexion aux nœuds d'un ensemble de réplicas MongoDB ou en solution de repli.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.
Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true; l'agent ne démarrera pas.

Plage: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode ou NearestMode

Plugins.MongoDB.Sessions.<SessionName>.TLSConnect

Spécifie le niveau de chiffrement requis pour les communications entre Zabbix agent 2 et les bases de données surveillées pour la session nommée.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.
Pris en charge depuis la version 1.2.1 du plugin.

Plage: required - exige une connexion TLS, verify_ca - vérifie les certificats, verify_full - vérifie les certificats et l'adresse IP

Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile

Spécifiez le chemin complet du fichier contenant le ou les certificats CA de niveau supérieur pour la vérification du certificat du pair, utilisés pour les communications chiffrées entre l'agent 2 Zabbix et les bases de données surveillées pour la session nommée.
<SessionName> - définissez le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSConnect est défini sur verify_ca ou verify_full

Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Spécifiez le chemin complet du fichier contenant le certificat de l'agent ou la chaîne de certificats, utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées pour la session nommée.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile est spécifié

Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Spécifiez le chemin complet du fichier contenant la clé privée de la base de données, utilisée pour les communications chiffrées entre l'agent 2 Zabbix et les bases de données surveillées pour la session nommée.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Obligatoire: yes, si Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile est spécifié

Plugins.MongoDB.Sessions.<SessionName>.Uri

Spécifie l'URI de session nommée.
<SessionName> - définit 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 : ``

Par défaut : tcp://127.0.0.1:27017

Exemples :

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

Spécifie le nom d'utilisateur de la session nommée.
<SessionName> - définit le nom d'une session à utiliser dans les clés d'élément.

Plugins.MongoDB.System.Path

Spécifiez le 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

Définit le délai d'exécution de la requête (la durée, en secondes, d'attente de l'exécution d'une requête avant de l'interrompre).

Par défaut: global timeout
Plage: 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 les tests (la configuration du plugin est ignorée).

Voir aussi