6 Plugin do MongoDB
Visão geral
O arquivo de configuração do Zabbix agent 2 é usado para configurar plugins. Estes parâmetros de configuração do Zabbix agent 2 são suportados para operar o plugin MongoDB.
Recomenda-se especificá-los em seu próprio arquivo de configuração (por exemplo, mongo.conf) e então usar a diretiva Include para adicionar esse arquivo à configuração do Zabbix agent 2.
O plugin MongoDB é um plugin carregável e está disponível e totalmente descrito no repositório do plugin MongoDB.
Observe que:
- Os valores padrão refletem os padrões do processo, não os valores nos arquivos de configuração fornecidos.
- Os valores suportam variáveis de ambiente.
- O Zabbix suporta arquivos de configuração apenas em codificação UTF-8 sem BOM.
- Comentários que começam com "#" são suportados apenas no início da linha.
Opções
| Parâmetro | Descrição |
|---|---|
| -V --version | Imprime a versão do plugin e informações de licença. |
| -h --help | Imprime informações de ajuda (forma abreviada). |
| -t, --test <item key> | Executa o plugin para teste (configuração do plugin ignorada). |
Parâmetros
Ao se conectar ao MongoDB, o plugin verifica sua configuração em uma ordem específica, que determina qual valor será usado. A ordem, da maior para a menor prioridade, é a seguinte:
- Parâmetros especificados na URI de conexão (por exemplo, os parâmetros de consulta definidos após
?emPlugins.MongoDB.Sessions.<session_name>.Uritêm a maior prioridade). - Parâmetros na chave do item do Zabbix agent 2 (por exemplo, mongodb.collection.stats).
- Parâmetros definidos em uma sessão nomeada (por exemplo,
Plugins.MongoDB.Sessions.<SessionName>.User,Plugins.MongoDB.Sessions.<SessionName>.Password). - Valores padrão (por exemplo,
Plugins.MongoDB.Default.User,Plugins.MongoDB.Default.Password).
Por exemplo:
- Se você especificar o banco de dados para autenticar uma conexão com o server MongoDB no parâmetro
*.<SessionName>.Uri(por exemplo,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), então o plugin considerará o parâmetro*.<SessionName>.AuthSourcecomo definido comoadmin, mesmo que o parâmetro*.<SessionName>.AuthSourceesteja definido com outro valor. - Se você especificar a URI no parâmetro
*.<SessionName>.Uri(por exemplo,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), mas fornecer o nome de usuário e a senha na chave do item do Zabbix agent 2, o plugin usará o nome de usuário e a senha da chave do item, mesmo quePlugins.MongoDB.Sessions.<SessionName>.UserePlugins.MongoDB.Sessions.<SessionName>.Passwordestejam configurados.
Se o esquema mongodb+srv:// for usado, a URI poderá obter parâmetros de um registro DNS TXT.
Os parâmetros obtidos desse registro TXT substituem todas as outras configurações, incluindo parâmetros da URI, parâmetros da chave do item do Zabbix Agent 2 e parâmetros da sessão.
Pode existir apenas um registro TXT para o hostname usado na string de conexão.
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.MongoDB.System.Path | no | Caminho para o executável do plugin MongoDB. Exemplo de uso: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb |
||
| Plugins.MongoDB.Timeout | no | 1-30 | global timeout | Tempo limite de execução da solicitação (a duração, em segundos, para aguardar a conclusão de uma solicitação antes de encerrá-la). |
| Plugins.MongoDB.KeepAlive | no | 60-900 | 300 | Tempo máximo de espera (em segundos) antes que conexões do plugin não utilizadas sejam fechadas. |
| Plugins.MongoDB.Sessions.<SessionName>.Uri | no | tcp://127.0.0.1:27017 |
String de conexão de uma sessão nomeada. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Deve corresponder ao formato da URI. Esquemas suportados: mongodb:// e mongodb+srv://; o esquema tcp:// está obsoleto e é mantido por compatibilidade com configurações existentes.A porta pode ser omitida (padrão=27017). Exemplos: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Sessions.<SessionName>.User | no | Nome de usuário da sessão nomeada. <SessionName> - define o nome de uma sessão para uso nas chaves do item. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Password | no | Senha da sessão nomeada. <SessionName> - define o nome de uma sessão para uso nas chaves do item. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Direct | no | false |
Método de conexão usado para determinar se a descoberta automática dos nós do replica set do MongoDB deve ser habilitada ou desabilitada. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Valores suportados: true - o plugin se conectará apenas ao server especificado, ignorando outros membros do replica set;false - o plugin descobrirá automaticamente todos os nós no replica set.Se o esquema tcp:// (obsoleto) for usado, o parâmetro será definido como true por padrão. |
|
| Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism | no | Mecanismo de autenticação para conexão com o server MongoDB. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Valores suportados: SCRAM-SHA-1, SCRAM-SHA-256 e MONGODB-X509. |
||
| Plugins.MongoDB.Sessions.<SessionName>.AuthSource | no | admin |
Banco de dados para autenticação da conexão com o server MongoDB. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Se o mecanismo de autenticação MONGODB-X509 for usado, este parâmetro será definido automaticamente como $external; modificá-lo para qualquer outro valor causará um erro na inicialização. |
|
| Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet | no | Nome do replica set, usado para descoberta automática dos nós do replica set do MongoDB. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Se este parâmetro for usado com o esquema mongodb+srv://, ele se comportará como se várias URLs tivessem sido fornecidas; um server DNS pode ter um registro TXT que pode substituir este parâmetro (ou qualquer outro).Indisponível se o parâmetro Plugins.MongoDB.Sessions.<SessionName>.Direct estiver definido como true; o agent falhará ao iniciar. |
||
| Plugins.MongoDB.Sessions.<SessionName>.ReadPreference | no | Ordem para conexão com os nós do replica set do MongoDB ou fallback. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Valores suportados: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode e NearestMode.Indisponível se o parâmetro Plugins.MongoDB.Sessions.<SessionName>.Direct estiver definido como true; o agent falhará ao iniciar. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSConnect | no | Tipo de criptografia para comunicações entre o Zabbix agent 2 e os bancos de dados monitorados. <SessionName> - define o nome de uma sessão para uso nas chaves do item. Valores suportados: required - exige conexão TLS;verify\_ca - verifica certificados;verify\_full - verifica certificados e endereço IP.Suportado desde a versão 1.2.1 do plugin. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full | Caminho completo de um arquivo contendo os certificados da CA de nível superior para verificação do certificado do par, usado para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. <SessionName> - define o nome de uma sessão para uso nas chaves do item. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified | Caminho completo de um arquivo contendo o certificado do agent ou a cadeia de certificados, usado para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. <SessionName> - define o nome de uma sessão para uso nas chaves do item. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified | Caminho completo de um arquivo contendo a chave privada do banco de dados usada para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. <SessionName> - define o nome de uma sessão para uso nas chaves do item. |
||
| Plugins.MongoDB.Default.Uri | no | tcp://127.0.0.1:27017 |
URI padrão para conexão com o MongoDB. Deve corresponder ao formato da URI. Esquemas suportados: mongodb:// e mongodb+srv://.Esquema obsoleto: tcp:// (usado como padrão por compatibilidade com configurações existentes).A porta pode ser omitida (padrão=27017). Exemplos: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Default.User | no | Nome de usuário padrão para conexão com o MongoDB. | ||
| Plugins.MongoDB.Default.Password | no | Senha padrão para conexão com o MongoDB. | ||
| Plugins.MongoDB.Default.Direct | no | false |
Método de conexão padrão usado para determinar se a descoberta automática dos nós do replica set do MongoDB deve ser habilitada ou desabilitada. Valores suportados: true - o plugin se conectará apenas ao server especificado, ignorando outros membros do replica set;false - o plugin descobrirá automaticamente todos os nós no replica set.Se o esquema tcp:// (obsoleto) for usado, o parâmetro será definido como true por padrão. |
|
| Plugins.MongoDB.Default.AuthMechanism | no | Mecanismo de autenticação padrão para conexão com o server MongoDB. Valores suportados: SCRAM-SHA-1, SCRAM-SHA-256 e MONGODB-X509.Se nenhum valor for especificado aqui, em uma chave do item, em uma sessão nomeada ou na URI, será usado um mecanismo baseado em SCRAM (se um nome de usuário for fornecido; caso contrário, nenhuma autenticação será usada). |
||
| Plugins.MongoDB.Default.AuthSource | no | admin |
Banco de dados padrão para autenticação da conexão com o server MongoDB. Se o mecanismo de autenticação MONGODB-X509 for usado, este parâmetro será definido automaticamente como $external; modificá-lo para qualquer outro valor causará um erro na inicialização. |
|
| Plugins.MongoDB.Default.ReplicaSet | no | Nome padrão do replica set; usado para descoberta automática dos nós do replica set do MongoDB. Se este parâmetro for usado com o esquema mongodb+srv://, ele se comportará como se várias URLs tivessem sido fornecidas; um server DNS pode ter um registro TXT que pode substituir este parâmetro (ou qualquer outro).Indisponível se o parâmetro Plugins.MongoDB.Default.Direct estiver definido como true; o agent falhará ao iniciar. |
||
| Plugins.MongoDB.Default.ReadPreference | no | Ordem padrão para conexão com os nós do replica set do MongoDB ou fallback. Valores suportados: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode e NearestMode.Indisponível se o parâmetro Plugins.MongoDB.Default.Direct estiver definido como true; o agent falhará ao iniciar. |
||
| Plugins.MongoDB.Default.TLSConnect | no | Tipo de criptografia padrão para comunicações entre o Zabbix agent 2 e os bancos de dados monitorados. Valores suportados: required - exige conexão TLS.verify\_ca - verifica certificados.verify\_full - verifica certificados e endereço IP.Se nenhum valor for especificado aqui, em uma chave do item, em uma sessão nomeada ou na URI, uma conexão TLS não será estabelecida. |
||
| Plugins.MongoDB.Default.TLSCAFile | no | Caminho padrão de um arquivo contendo os certificados da CA de nível superior para verificação do certificado do par. Usado para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. | ||
| Plugins.MongoDB.Default.TLSCertFile | no | Caminho padrão de um arquivo contendo o certificado do cliente MongoDB ou a cadeia de certificados. Usado para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. | ||
| Plugins.MongoDB.Default.TLSKeyFile | no | Caminho padrão de um arquivo contendo a chave privada do cliente MongoDB usada para comunicações criptografadas entre o Zabbix agent 2 e os bancos de dados monitorados. |
Veja também:
- Descrição dos parâmetros gerais de configuração do Zabbix agent 2: Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- Instruções para configurar plugins