Plugin MongoDB

Panoramica

I parametri di configurazione consentono di personalizzare il comportamento del plugin MongoDB.

Si consiglia di specificarli in un file di configurazione separato (ad esempio, mongodb.conf), invece che nel file di configurazione di agent 2. Quindi usare la direttiva Include per includere questo file nella configurazione di Zabbix agent 2.

Il plugin MongoDB è un plugin caricabile ed è disponibile e descritto in modo completo nel repository del plugin MongoDB.

Tutti i parametri sono opzionali, a meno che non sia esplicitamente indicato che il parametro è obbligatorio.

Quando si connette a MongoDB, il plugin verifica la propria configurazione in un ordine specifico, che determina quale valore utilizzare. L'ordine, dal più alto al più basso, è il seguente:

  1. Parametri specificati nell'URI di connessione (ad esempio, i parametri di query definiti dopo ? in Plugins.MongoDB.Sessions.<session_name>.Uri hanno la priorità più alta).
  2. Parametri nella chiave item di Zabbix agent 2 (ad esempio, mongodb.collection.stats).
  3. Parametri definiti in una sessione denominata (ad esempio, Plugins.MongoDB.Sessions.<SessionName>.User, Plugins.MongoDB.Sessions.<SessionName>.Password).
  4. Valori predefiniti (ad esempio, Plugins.MongoDB.Default.User, Plugins.MongoDB.Default.Password).

Ad esempio:

  • Se si specifica il database per l'autenticazione di una connessione al server MongoDB nel parametro *.<SessionName>.Uri (ad esempio, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), il plugin considererà il parametro *.<SessionName>.AuthSource impostato su admin, anche se il parametro *.<SessionName>.AuthSource è impostato su un valore diverso.
  • Se si specifica l'URI nel parametro *.<SessionName>.Uri (ad esempio, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), ma si forniscono nome utente e password nella chiave item di Zabbix agent 2, il plugin userà il nome utente e la password dalla chiave item, anche se Plugins.MongoDB.Sessions.<SessionName>.User e Plugins.MongoDB.Sessions.<SessionName>.Password sono configurati.

Se viene usato lo schema mongodb+srv://, l'URI può recuperare parametri da un record DNS TXT. I parametri ottenuti da questo record TXT sostituiscono tutte le altre configurazioni, inclusi i parametri URI, i parametri della chiave item di Zabbix Agent 2 e i parametri della sessione.
Può esistere un solo record TXT per l'hostname usato nella stringa di connessione.

Questa pagina è strutturata come segue:

  • Panoramica dei parametri (per vedere i dettagli completi di un parametro, fare clic sul suo nome)
  • Dettagli dei parametri
Parameter Description
Plugins.MongoDB.Default.AuthMechanism Specify the default authentication mechanism for connecting to MongoDB server.
Plugins.MongoDB.Default.AuthSource Specify the default database for authenticating connection to MongoDB server.
Plugins.MongoDB.Default.Direct Disable automatic discovery of MongoDB replica set nodes.
Plugins.MongoDB.Default.Password Specify the default password.
Plugins.MongoDB.Default.ReplicaSet Specify the default replica set name, used for automatic discovery of MongoDB replica set nodes.
Plugins.MongoDB.Default.ReadPreference Specify the default order for connecting to MongoDB replica set nodes or fallback.
Plugins.MongoDB.Default.TLSConnect Specify the level of encryption required for communications between Zabbix agent 2 and monitored databases.
Plugins.MongoDB.Default.TLSCAFile Specify full pathname of the file containing the top-level CA(s) certificates for peer certificate verification.
Plugins.MongoDB.Default.TLSCertFile Specify full pathname of the file containing the agent certificate or certificate chain.
Plugins.MongoDB.Default.TLSKeyFile Specify full pathname of the file containing the database private key.
Plugins.MongoDB.Default.Uri Specify the default URI.
Plugins.MongoDB.Default.User Specify the default username.
Plugins.MongoDB.KeepAlive Set the maximum time of waiting before unused plugin connections are closed.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism Specify the named session authentication mechanism for connecting to MongoDB server.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource Specify the named session database for authenticating connection to MongoDB server.
Plugins.MongoDB.Sessions.<SessionName>.Direct Disable automatic discovery of MongoDB replica set nodes for named session.
Plugins.MongoDB.Sessions.<SessionName>.Password Specify the named session password.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet Specify the named session replica set name, used for automatic discovery of MongoDB replica set nodes.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference Specify the named session order for connecting to MongoDB replica set nodes or fallback.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect Specify the level of encryption required for communications between Zabbix agent 2 and monitored databases for named session.
Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile Specify full pathname of the file containing the top-level CA(s) certificates for peer certificate verification for named session.
Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile Specify full pathname of the file containing the agent certificate or certificate chain for named session.
Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile Specify full pathname of the file containing the database private key for named session.
Plugins.MongoDB.Sessions.<SessionName>.Uri Specify the named session URI.
Plugins.MongoDB.Sessions.<SessionName>.User Specify the named session username.
Plugins.MongoDB.System.Path Specify path to the plugin executable.
Plugins.MongoDB.Timeout Set the request execution timeout.

Si noti che:

  • I valori predefiniti riflettono i valori predefiniti del processo, non i valori presenti nei file di configurazione forniti.
  • I valori supportano le variabili di ambiente.
  • Zabbix supporta file di configurazione solo in codifica UTF-8 senza BOM.
  • I commenti che iniziano con "#" sono supportati solo all'inizio della riga.

Dettagli del parametro

Plugins.MongoDB.Default.AuthMechanism

Specifica il meccanismo di autenticazione predefinito per la connessione al server MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Intervallo: SCRAM-SHA-1, SCRAM-SHA-256 o MONGODB-X509

Plugins.MongoDB.Default.AuthSource

Specifica il database predefinito per l'autenticazione della connessione al server MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Predefinito: admin

Se viene utilizzato il meccanismo di autenticazione MONGODB-X509, questo parametro viene impostato automaticamente su $external; modificarlo in qualsiasi altro valore causerà un errore all'avvio.

Plugins.MongoDB.Default.Direct

Disabilita il rilevamento automatico dei nodi del replica set di MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Predefinito: false
Intervallo: true - si connette solo al server specificato, ignorando gli altri membri del replica set, false - rileva automaticamente tutti i nodi nel replica set.

Se viene usato lo schema tcp:// (deprecato), il parametro viene impostato su true per impostazione predefinita.

Plugins.MongoDB.Default.Password

Specificare la password predefinita.
<SessionName> - definire il nome di una sessione da usare nelle chiavi degli item.

Plugins.MongoDB.Default.ReplicaSet

Specifica il nome predefinito del replica set, utilizzato per il rilevamento automatico dei nodi del replica set MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Se questo parametro viene usato con lo schema mongodb+srv://, si comporterà come se fossero stati forniti più URL; un server DNS può avere un record TXT che può sovrascrivere questo parametro (o qualsiasi altro parametro).
Non disponibile se il parametro Plugins.MongoDB.Sessions.<SessionName>.Direct è impostato su true; l'agent non riuscirà ad avviarsi.

Plugins.MongoDB.Default.ReadPreference

Specifica l'ordine predefinito per la connessione ai nodi del replica set MongoDB o per il fallback.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Non disponibile se il parametro Plugins.MongoDB.Sessions.<SessionName>.Direct è impostato su true; l'agent non si avvierà.

Intervallo: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode o NearestMode

Plugins.MongoDB.Default.TLSConnect

Specifica il livello di crittografia richiesto per le comunicazioni tra Zabbix agent 2 e i database monitorati.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Supportato a partire dalla versione 1.2.1 del plugin.

Intervallo: required - richiede una connessione TLS, verify_ca - verifica i certificati, verify_full - verifica i certificati e l'indirizzo IP

Plugins.MongoDB.Default.TLSCAFile

Specifica il percorso completo del file contenente i certificati CA di livello superiore per la verifica del certificato del peer, utilizzati per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se Plugins.MongoDB.Sessions.<SessionName>.TLSConnect è impostato su verify_ca o verify_full

Plugins.MongoDB.Default.TLSCertFile

Specifica il percorso completo del file contenente il certificato dell'agent o la catena di certificati, utilizzato per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se è specificato Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Plugins.MongoDB.Default.TLSKeyFile

Specifica il percorso completo del file contenente la chiave privata del database, utilizzata per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se è specificato Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Plugins.MongoDB.Default.Uri

Specifica l'URI predefinito.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Deve corrispondere al formato URI.
Schemi supportati: mongodb:// e mongodb+srv://; lo schema tcp:// è deprecato e mantenuto per compatibilità con le configurazioni esistenti.
La porta può essere omessa (default=27017).
Esempi: ``

Predefinito: tcp://127.0.0.1:27017

Esempi:

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

Specificare il nome utente predefinito.
<SessionName> - definire il nome di una sessione da usare nelle chiavi degli item.

Plugins.MongoDB.KeepAlive

Imposta il tempo massimo di attesa (in secondi) prima che le connessioni del plugin non utilizzate vengano chiuse.

Predefinito: 300
Intervallo: 60-900

Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism

Specifica il meccanismo di autenticazione della sessione denominata per la connessione al server MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Intervallo: SCRAM-SHA-1, SCRAM-SHA-256 o MONGODB-X509

Plugins.MongoDB.Sessions.<SessionName>.AuthSource

Specifica il database della sessione denominata per l'autenticazione della connessione al server MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Predefinito: admin

Se viene utilizzato il meccanismo di autenticazione MONGODB-X509, questo parametro viene impostato automaticamente su $external; modificarlo in qualsiasi altro valore causerà un errore all'avvio.

Plugins.MongoDB.Sessions.<SessionName>.Direct

Disabilita il rilevamento automatico dei nodi del replica set di MongoDB per la sessione denominata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Predefinito: false
Intervallo: true - si connette solo al server specificato, ignorando gli altri membri del replica set, false - rileva automaticamente tutti i nodi nel replica set.

Se viene usato lo schema tcp:// (deprecato), il parametro viene impostato su true per impostazione predefinita.

Plugins.MongoDB.Sessions.<SessionName>.Password

Specifica la password della sessione denominata.
<SessionName> - definisce il nome di una sessione da utilizzare nelle chiavi degli item.

Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet

Specifica il nome del replica set della sessione denominata, utilizzato per il rilevamento automatico dei nodi del replica set di MongoDB.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Se questo parametro viene usato con lo schema mongodb+srv://, si comporterà come se fossero stati forniti più URL; un server DNS può avere un record TXT che può sovrascrivere questo parametro (o qualsiasi altro parametro).
Non disponibile se il parametro Plugins.MongoDB.Sessions.<SessionName>.Direct è impostato su true; l'agent non riuscirà ad avviarsi.

Plugins.MongoDB.Sessions.<SessionName>.ReadPreference

Specifica l'ordine della sessione denominata per la connessione ai nodi del replica set MongoDB o come fallback.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Non disponibile se il parametro Plugins.MongoDB.Sessions.<SessionName>.Direct è impostato su true; l'agent non riuscirà ad avviarsi.

Intervallo: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode o NearestMode

Plugins.MongoDB.Sessions.<SessionName>.TLSConnect

Specifica il livello di crittografia richiesto per le comunicazioni tra Zabbix agent 2 e i database monitorati per la sessione specificata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Supportato a partire dalla versione 1.2.1 del plugin.

Intervallo: required - richiede una connessione TLS, verify_ca - verifica i certificati, verify_full - verifica i certificati e l'indirizzo IP

Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile

Specifica il percorso completo del file contenente i certificati CA di livello superiore per la verifica del certificato del peer, utilizzato per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati per la sessione specificata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se Plugins.MongoDB.Sessions.<SessionName>.TLSConnect è impostato su verify_ca o verify_full

Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Specifica il percorso completo del file contenente il certificato dell'agent o la catena di certificati, utilizzato per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati per la sessione specificata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se è specificato Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Specificare il percorso completo del file contenente la chiave privata del database, utilizzata per le comunicazioni crittografate tra Zabbix agent 2 e i database monitorati per la sessione specificata.
<SessionName> - definire il nome di una sessione da usare nelle chiavi degli item.

Obbligatorio: yes, se è specificato Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Plugins.MongoDB.Sessions.<SessionName>.Uri

Specifica l'URI della sessione denominata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.
Deve corrispondere al formato URI.
Schemi supportati: mongodb:// e mongodb+srv://; lo schema tcp:// è deprecato e mantenuto per compatibilità con le configurazioni esistenti.
La porta può essere omessa (default=27017).
Esempi: ``

Predefinito: tcp://127.0.0.1:27017

Esempi:

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

Specifica il nome utente della sessione denominata.
<SessionName> - definisce il nome di una sessione da usare nelle chiavi degli item.

Plugins.MongoDB.System.Path

Specifica il percorso dell'eseguibile del plugin MongoDB.

Esempio di utilizzo: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb

Plugins.MongoDB.Timeout

Imposta il timeout di esecuzione della richiesta (la durata, in secondi, da attendere affinché una richiesta venga completata prima di interromperla).

Predefinito: global timeout
Intervallo: 1-30

Opzioni

Parameter Description
-V --version Stampa la versione del plugin e le informazioni sulla licenza.
-h --help Stampa le informazioni di aiuto (scorciatoia).
-t, --test <item key> Avvia il plugin per il test (la configurazione del plugin viene ignorata).

Vedi anche