Esta se??o fornece detalhes sobre verifica??es passivas e ativas realizadas por agente Áú»¢¶Ä²©.
O Áú»¢¶Ä²© usa um protocolo de comunica??o baseado em JSON para se comunicar com Agente Áú»¢¶Ä²©.
Uma verifica??o passiva ¨¦ uma solicita??o de dados simples. Servidor ou proxy Áú»¢¶Ä²© pergunta para alguns dados (por exemplo, carga da CPU) e o agente Áú»¢¶Ä²© envia de volta o resultado para o servidor.
Solicita??o do servidor
Para defini??o de cabe?alho e comprimento de dados, consulte protocolo detalhes.
Resposta do agente
Acima, a parte entre colchetes ¨¦ opcional e s¨® ¨¦ enviada para n?o itens suportados.
Por exemplo, para itens suportados:
Para itens n?o suportados:
As verifica??es ativas requerem um processamento mais complexo. O agente deve primeiro recuperar do(s) servidor(es) uma lista de itens para processamento independente.
Os servidores para obter as verifica??es ativas est?o listados no Par?metro 'ServerActive' do agente configura??o arquivo. A frequ¨ºncia de perguntas para essas verifica??es ¨¦ definido pelo par?metro 'RefreshActiveChecks' no mesmo arquivo de configura??o. No entanto, se a atualiza??o das verifica??es ativas falhar, ¨¦ tentado novamente ap¨®s 60 segundos codificados.
O agente ent?o envia periodicamente os novos valores para o(s) servidor(es).
Se um agente estiver atr¨¢s do firewall, voc¨º pode considerar usando apenas verifica??es ativas porque nesse caso voc¨º n?o precisaria modifique o firewall para permitir conex?es de entrada iniciais.
In order to decrease network traffic and resources usage Áú»¢¶Ä²© server or Áú»¢¶Ä²© proxy will provide configuration only if Áú»¢¶Ä²© agent still hasn't received configuration or if something has changed in host configuration, global macros or global regular expressions.
The agent then periodically sends the new values to the server(s).
If an agent is behind the firewall you might consider using only Active checks because in this case you wouldn't need to modify the firewall to allow initial incoming connections.
Solicita??o do agente
Resposta do servidor
{
"resposta":"sucesso",
"dados":[
{
"key":"log[/home/zabbix/logs/zabbix_agentd.log]",
"atraso":30,
"lastlogsize":0,
"mtime":0
},
{
"key":"agente.vers?o",
"atraso": 600,
"lastlogsize":0,
"mtime":0
},
{
"key":"vfs.fs.size[/nono]",
"atraso": 600,
"lastlogsize":0,
"mtime":0
}
]
}
O servidor deve responder com sucesso. Para cada item devolvido, todos as propriedades key, delay, lastlogsize e mtime devem existir, independentemente de o item ser um item de log ou n?o.
Por exemplo:
::: n?o importante Observe que os dados de configura??o (sens¨ªveis) podem tornar-se dispon¨ªvel para as partes que t¨ºm acesso ao servidor Áú»¢¶Ä²© trapper porta ao usar uma verifica??o ativa. Isso ¨¦ poss¨ªvel porque qualquer pessoa pode fingir ser um agente ativo e solicitar dados de configura??o do item; a autentica??o n?o ocorre a menos que voc¨º use criptografia op??es. :::
Agente envia
{
"request":"dados do agente",
"sess?o": "12345678901234567890123456789012",
"dados":[
{
"host":"<nome do host>",
"key":"agente.vers?o",
"valor":"2.4.0",
"id": 1,
&±ç³Ü´Ç³Ù;°ù±ð±ô¨®²µ¾±´Ç&±ç³Ü´Ç³Ù;: 1400675595,
"ns":76808644
},
{
"host":"<nome do host>",
"key":"log[/home/zabbix/logs/zabbix_agentd.log]",
"lastlogsize":112,
"value":" 19845:20140621:141708.521 Iniciando o Áú»¢¶Ä²© Agent [<hostname>]. Áú»¢¶Ä²© 2.4.0 (revis?o 50000).",
"id": 2,
&±ç³Ü´Ç³Ù;°ù±ð±ô¨®²µ¾±´Ç&±ç³Ü´Ç³Ù;: 1400675595,
"ns":77053975
},
{
"host":"<nome do host>",
"key":"vfs.fs.size[/nono]",
"estado":1,
"value":"N?o ¨¦ poss¨ªvel obter informa??es do sistema de arquivos: [2] Arquivo ou diret¨®rio inexistente",
"id": 3,
&±ç³Ü´Ç³Ù;°ù±ð±ô¨®²µ¾±´Ç&±ç³Ü´Ç³Ù;: 1400675595,
"ns":78154128
}
],
&±ç³Ü´Ç³Ù;°ù±ð±ô¨®²µ¾±´Ç&±ç³Ü´Ç³Ù;: 1400675595,
"ns": 78211329
}
Um ID virtual ¨¦ atribu¨ªdo a cada valor. O ID do valor ¨¦ um simples ascendente contador, ¨²nico dentro de uma sess?o de dados (identificado pela sess?o s¨ªmbolo). Este ID ¨¦ usado para descartar valores duplicados que podem ser enviados em ambientes de baixa conectividade.
Resposta do servidor
::: n?o importante Se o envio de alguns valores falhar no servidor (por exemplo, porque o host ou item foi desabilitado ou exclu¨ªdo), o agente n?o tente enviar novamente esses valores. :::
Por exemplo:
Observe como no exemplo acima o status n?o suportado para vfs.fs.size[/nono] ¨¦ indicado pelo valor "state" de 1 e o mensagem de erro na propriedade "valor".
::: n?o importante A mensagem de erro ser¨¢ cortada para 2048 s¨ªmbolos em lado do servidor. :::
The heartbeat message is sent by an active agent to Áú»¢¶Ä²© server/proxy every HeartbeatFrequency seconds (configured in the Áú»¢¶Ä²© agent configuration file).
It is used to monitor the availability of active checks.
Field | Type | Mandatory | Value |
---|---|---|---|
request | string | yes | active check heartbeat |
host | string | yes | The host name. |
heartbeat_freq | number | yes | The agent heartbeat frequency (HeartbeatFrequency configuration parameter). |
O Áú»¢¶Ä²© ir¨¢ tratar at¨¦ 16 MB de dados XML codificados em Base64, mas um ¨²nico valor decodificado n?o poder¨¢ ser superior a 64 KB ou ser¨¢ truncado para 64 KB durante a decodifica??o.