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 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 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 tous les détails d'un paramètre, cliquez sur son nom)
  • Détails des paramètres
Parameter Description
Plugins.MongoDB.Default.AuthMechanism Spécifiez le mécanisme d'authentification par défaut pour la connexion au serveur MongoDB.
Plugins.MongoDB.Default.AuthSource Spécifiez la base de données par défaut pour l'authentification de la connexion au serveur MongoDB.
Plugins.MongoDB.Default.Direct Désactivez la découverte automatique des nœuds de l'ensemble de réplicas MongoDB.
Plugins.MongoDB.Default.Password Spécifiez le mot de passe par défaut.
Plugins.MongoDB.Default.ReplicaSet Spécifiez le nom par défaut de l'ensemble de réplicas, utilisé pour la découverte automatique des nœuds de l'ensemble de réplicas MongoDB.
Plugins.MongoDB.Default.ReadPreference Spécifiez l'ordre par défaut pour la connexion aux nœuds de l'ensemble de réplicas MongoDB ou le repli.
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.
Plugins.MongoDB.Default.TLSCAFile Spécifiez le chemin complet du fichier contenant les certificats des AC racines pour la vérification du certificat du pair.
Plugins.MongoDB.Default.TLSCertFile Spécifiez le chemin complet du fichier contenant le certificat de l'agent ou la chaîne de certificats.
Plugins.MongoDB.Default.TLSKeyFile Spécifiez le chemin complet du fichier contenant la clé privée de la base de données.
Plugins.MongoDB.Default.Uri Spécifiez l'URI par défaut.
Plugins.MongoDB.Default.User Spécifiez le nom d'utilisateur par défaut.
Plugins.MongoDB.KeepAlive Définissez le temps d'attente maximal avant la fermeture des connexions inutilisées du plugin.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism Spécifiez le mécanisme d'authentification de la session nommée pour la connexion au serveur MongoDB.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource Spécifiez 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ésactivez la découverte automatique des nœuds de l'ensemble de réplicas MongoDB pour la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.Password Spécifiez le mot de passe de la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet Spécifiez 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.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference Spécifiez l'ordre de la session nommée pour la connexion aux nœuds de l'ensemble de réplicas MongoDB ou le repli.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect Spécifiez 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écifiez 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écifiez 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écifiez 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écifiez l'URI de la session nommée.
Plugins.MongoDB.Sessions.<SessionName>.User Spécifiez le nom d'utilisateur de la session nommée.
Plugins.MongoDB.System.Path Spécifiez le chemin vers l'exécutable du plugin.
Plugins.MongoDB.Timeout Définissez le délai d'attente 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