Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

1 Protocolo de troca de dados servidor-proxy

Visão geral

Servidor - a troca de dados do proxy é baseada no formato JSON.

As mensagens de solicitação e resposta devem começar com cabeçalho e dados comprimento.

Proxy passivo

Solicitação de configuração de proxy

A solicitação proxy config é enviada pelo servidor para fornecer proxy dados de configuração. Esta solicitação é enviada a cada ProxyConfigFrequency (parâmetro de configuração do servidor) segundos.

nome tipo de valor descrição
servidor→proxy:
request string 'proxy config'
<tabela> objeto um ou mais objetos com <tabela> dados
campos array array de nomes de campo
- string nome do campo
dados array array de linhas
- array array de colunas
- string,number valor da coluna com tipo dependendo do tipo de coluna no esquema do banco de dados
proxy→servidor:
resposta string as informações de sucesso da solicitação ('sucesso' ou 'falha')
versão string a versão do proxy (<major>.<minor>.<build>)

Exemplo:

servidor→proxy:

{
           "request": "configuração de proxy",
           "macro global":{
               "Campos":[
                   "globalmacróide",
                   "macro",
                   "valor"
               ],
               "dados":[
                   [
                       2,
                       "{$SNMP_COMMUNITY}",
                       "público"
                   ]
               ]
           },
           "hosts":{
               "Campos":[
                   "host",
                   "hospedeiro",
                   "status",
                   "ipmi_authtype",
                   "ipmi_privilege",
                   "ipmi_username",
                   "ipmi_senha",
                   "nome",
                   "tls_connect",
                   "tls_aceitar",
                   "tls_issuer",
                   "tls_assunto",
                   "tls_psk_identity",
                   "tls_psk"
               ],
               "dados":[
                   [
                       10001,
                       "Linux",
                       3,
                       -1,
                       2,
                       "",
                       "",
                       "Linux",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ],
                   [
                       10050,
                       "Agente Zabbix",
                       3,
                       -1,
                       2,
                       "",
                       "",
                       "Agente Zabbix",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ],
                   [
                       10105,
                       "Registrador",
                       0,
                       -1,
                       2,
                       "",
                       "",
                       "Registrador",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ]
               ]
           },
           "interface":{
               "Campos":[
                   "interfaceid",
                   "host",
                   "a Principal",
                   "tipo",
                   "usei",
                   "ip",
                   "dns",
                   "porta",
                   "volume"
               ],
               "dados":[
                   [
                       2,
                       10105,
                       1,
                       1,
                       1,
                       "127.0.0.1",
                       "",
                       "10050",
                       1
                   ]
               ]
           },
           ...
       }

proxy→servidor:

{
         "resposta": "sucesso",
         "versão": "5.4.0"
       }
Solicitação de proxy

A solicitação proxy data é usada para obter a disponibilidade da interface do host, dados históricos, de descoberta e registro automático do proxy. Esse pedido é enviado a cada ProxyDataFrequency (parâmetro de configuração do servidor) segundos.

nome tipo de valor descrição
servidor→proxy:
solicitação string 'dados de proxy'
proxy→servidor:
sessão string token de sessão de dados
disponibilidade de interface array (opcional) array de objetos de dados de disponibilidade de interface
interfaceid número identificador de interface
disponível número Disponibilidade da interface

0, INTERFACE_AVAILABLE_UNKNOWN - desconhecido
1, *INTERFACE_AVAILABLE _TRUE* - disponível
2, INTERFACE_AVAILABLE_FALSE - indisponível
error string Mensagem de erro de interface ou string vazia
dados históricos array (opcional) array de objetos de dados históricos
itemid número identificador do item
relógio número valor do item timestamp (segundos)
ns número valor do item timestamp (nanossegundos)
valor string (opcional) valor do item
id number identificador de valor (contador crescente, único dentro de uma sessão de dados)
timestamp number (opcional) timestamp de itens do tipo de log
fonte string (opcional) valor da fonte do item do log de eventos
severidade número (opcional) valor de gravidade do item do log de eventos
eventid number (opcional) eventlog item eventid value
state string (opcional) estado do item
0, ITEM_STATE_NORMAL
1, *ITEM_STATE _NÃO SUPORTADO*
lastlogsize number (opcional) último tamanho de log dos itens do tipo de log
mtime number (opcional) modificar a hora dos itens do tipo de log
dados de descoberta array (opcional) array de objetos de dados de descoberta
relógio número o carimbo de data/hora dos dados de descoberta
druleid number o identificador da regra de descoberta
dcheckid number o identificador de verificação de descoberta ou nulo para dados da regra de descoberta
tipo número tipo de verificação de descoberta:

-1 dados da regra de descoberta
0, SVC_SSH - serviço SSH check
1, SVC_LDAP - verificação do serviço LDAP
2, SVC_SMTP - verificação do serviço SMTP
3, SVC_FTP - Verificação do serviço FTP
4, SVC_HTTP - Verificação do serviço HTTP
5, SVC_POP - Verificação do serviço POP
6, SVC_NNTP - Verificação do serviço NNTP
7, SVC_IMAP - Verificação do serviço IMAP
8, SVC_TCP - Verificação da disponibilidade da porta TCP
* *9, SVC_AGENT - agente Zabbix
10, SVC_SNMPv1 - agente SNMPv1
11, SVC_SNMPv2 - agente SNMPv2
12, SVC_ICMPPING - ping ICMP
13, SVC_SNMPv3 - agente SNMPv3
14, SVC_HTTPS - verificação de serviço HTTPS< br>15**, SVC_TELNET - Verificação de disponibilidade do Telnet
ip string o endereço IP do host
dns string o nome DNS do host
porta número (opcional) número da porta de serviço
key_ string (opcional) a chave do item para verificação de descoberta do tipo 9 SVC_AGENT
valor string (opcional) valor recebido do serviço, pode estar vazio para a maioria dos serviços
status number (opcional) status do serviço:

0, DOBJECT_STATUS_UP - Service UP
**1* , DOBJECT_STATUS_DOWN* - Serviço DOWN
registro automático array (opcional) array de objetos de dados de registro automático
relógio número o carimbo de data/hora dos dados de registro automático
host string o nome do host
ip string (opcional) o endereço IP do host
dns string (opcional) o nome DNS resolvido do endereço IP
port string (opcional) a porta do host
host_metadata string (opcional) os metadados do host enviados pelo agente (com base no parâmetro de configuração do agente HostMetadata ou HostMetadataItem)
tarefas array (opcional) array de tarefas
type number o tipo de tarefa:

0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - remote command result
status number status de execução do comando remoto:

0, ZBX_TM_REMOTE_COMMAND_COMPLETED - o comando remoto foi concluído com sucesso<br >1, ZBX_TM_REMOTE_COMMAND_FAILED - o comando remoto falhou
error string (opcional) a mensagem de erro
parent_taskid number o ID da tarefa pai
mais número (opcional) 1 - há mais dados do histórico para enviar
relógio número (opcional) data de transferência de dados (segundos)
ns number (opcional) data de transferência de dados (nanossegundos)
versão string a versão do proxy (<major>.<minor>.<build>)
servidor→proxy:
resposta string as informações de sucesso da solicitação ('sucesso' ou 'falha')
tarefas array (opcional) array de tarefas
tipo número tipo de tarefa:

1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - comando remoto
relógio número hora de criação da tarefa
ttl number o tempo em segundos após o qual a tarefa expira
commandtype number o tipo de comando remoto:

0
, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - use script personalizado
1, ZBX_SCRIPT_TYPE_IPMI - use IPMI
2, ZBX_SCRIPT _TYPE_SSH - use SSH
3, ZBX_SCRIPT_TYPE_TELNET - use Telnet
4, ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - use script global (atualmente funcionalmente equivalente ao script personalizado)
comando string o comando remoto a ser executado
execute_on number o destino de execução para scripts personalizados:

0, ZBX_SCRIPT_EXECUTE_ON_AGENT - executa script no agente
1, ZBX_SCRIPT_EXECUTE_ON_SERVER - executa script no servidor
2, ZBX_SCRIPT_EXECUTE_ON_PROXY - executa script no proxy
port number (opcional) a porta para comandos telnet e ssh
authtype number (opcional) o tipo de autenticação para comandos ssh
username string (opcional) o nome de usuário para comandos telnet e ssh
senha string (opcional) a senha para comandos telnet e ssh
chave pública string (opcional) a chave pública para comandos ssh
privatekey string (opcional) a chave privada para comandos ssh
parent_taskid number o ID da tarefa pai
hostid number hostid de destino

Exemplo:

servidor→proxy:

{
         "request": "dados proxy"
       }

proxy→servidor:

{
           "sessão": "12345678901234567890123456789012"
           "disponibilidade de interface": [
               {
                   "interfaceid": 1,
                   "disponível": 1,
                   "erro": ""
           },
               {
                   "interfaceid": 2,
                   "disponível": 2,
                   "error": "Falha ao obter valor do agente: não é possível conectar a [[127.0.0.1]:10049]: [111] Conexão recusada"
           },
               {
                   "interfaceid": 3,
                   "disponível": 1,
                   "erro": ""
           },
               {
                   "interfaceid": 4,
                   "disponível": 1,
                   "erro": ""
           }
           ],
           "dados do histórico":[
               {
                   "itemid":"12345",
                   "relógio":1478609647,
                   "ns":332510044,
                   "valor":"52956612",
                   "id": 1
               },
               {
                   "itemid":"12346",
                   "relógio":1478609647,
                   "ns":330690279,
                   "estado":1,
                   "value":"Não foi possível encontrar informações para esta interface de rede em /proc/net/dev.",
                   "id": 2
               }
           ],
           "dados de descoberta":[
               {
                   "relógio": 1478608764,
                   "drule": 2,
                   "dcheck":3,
                   "tipo":12,
                   "ip":"10.3.0.10",
                   "dns":"vdebian",
                   "estado":1
               },
               {
                   "relógio": 1478608764,
                   "drule": 2,
                   "dcheck":null,
                   "tipo 1,
                   "ip":"10.3.0.10",
                   "dns":"vdebian",
                   "estado":1
               }
           ],
           "registro automático":[
               {
                   "relógio":1478608371,
                   "host":"Registrador1",
                   "ip":"10.3.0.1",
                   "dns":"localhost",
                   "porta":"10050"
               },
               {
                   "relógio":1478608381,
                   "host":"Logger2",
                   "ip":"10.3.0.2",
                   "dns":"localhost",
                   "porta":"10050"
               }
           ],
           "tarefas":[
               {
                   "tipo": 0,
                   "estado": 0,
                   "parent_taskid": 10
               },
               {
                   "tipo": 0,
                   "estado": 1,
                   "error": "Nenhuma permissão para executar a tarefa.",
                   "parent_taskid": 20
               }
           ],
           "versão":"5.4.0"
       }

servidor→proxy:

{
         "resposta": "sucesso",
         "tarefas":[
             {
                "tipo 1,
                "relógio": 1478608371,
                "ttl": 600,
                "commandtype": 2,
                "command": "restart_service1.sh",
                "execute_on": 2,
                "porta": 80,
                "authtype": 0,
                "username": "userA",
                "senha": "senha1",
                "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",
                "privatekey": "lsuusFncCzWBQ7RKNUsesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",
                "parent_taskid": 10,
                "hostid": 10070
             },
             {
                "tipo 1,
                "relógio": 1478608381,
                "ttl": 600,
                "commandtype": 1,
                "command": "restart_service2.sh",
                "execute_on": 0,
                "authtype": 0,
                "nome do usuário": "",
                "senha": "",
                "chave pública": "",
                "chave privada": "",
                "parent_taskid": 20,
                "hostid": 10084
             }
         ]
       }

Proxy ativo

Solicitação de configuração de proxy

A solicitação proxy config é enviada pelo proxy para obter o proxy dados de configuração. Este pedido é enviado a cada ConfigFrequency (proxy parâmetro de configuração) segundos.

nome tipo de valor descrição
proxy→servidor:
request string 'proxy config'
host string nome do proxy
versão string a versão do proxy (<major>.<minor>.<build>)
servidor→proxy:
request string 'proxy config'
<tabela> objeto um ou mais objetos com <tabela> dados
campos array array de nomes de campo
- string nome do campo
dados array array de linhas
- array array de colunas
- string,number valor da coluna com tipo dependendo do tipo de coluna no esquema do banco de dados
proxy→servidor:
resposta string as informações de sucesso da solicitação ('sucesso' ou 'falha')

Exemplo:

proxy→servidor:

{
         "request": "configuração de proxy",
         "host": "Proxy nº 12",
         "versão":"5.4.0"
       }

servidor→proxy:

{
           "macro global":{
               "Campos":[
                   "globalmacróide",
                   "macro",
                   "valor"
               ],
               "dados":[
                   [
                       2,
                       "{$SNMP_COMMUNITY}",
                       "público"
                   ]
               ]
           },
           "hosts":{
               "Campos":[
                   "host",
                   "hospedeiro",
                   "status",
                   "ipmi_authtype",
                   "ipmi_privilege",
                   "ipmi_username",
                   "ipmi_senha",
                   "nome",
                   "tls_connect",
                   "tls_aceitar",
                   "tls_issuer",
                   "tls_assunto",
                   "tls_psk_identity",
                   "tls_psk"
               ],
               "dados":[
                   [
                       10001,
                       "Linux",
                       3,
                       -1,
                       2,
                       "",
                       "",
                       "Linux",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ],
                   [
                       10050,
                       "Agente Zabbix",
                       3,
                       -1,
                       2,
                       "",
                       "",
                       "Agente Zabbix",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ],
                   [
                       10105,
                       "Registrador",
                       0,
                       -1,
                       2,
                       "",
                       "",
                       "Registrador",
                       1,
                       1,
                       "",
                       "",
                       "",
                       ""
                   ]
               ]
           },
           "interface":{
               "Campos":[
                   "interfaceid",
                   "host",
                   "a Principal",
                   "tipo",
                   "usei",
                   "ip",
                   "dns",
                   "porta",
                   "volume"
               ],
               "dados":[
                   [
                       2,
                       10105,
                       1,
                       1,
                       1,
                       "127.0.0.1",
                       "",
                       "10050",
                       1
                   ]
               ]
           },
           ...
       }

proxy→servidor:

{
         "resposta": "sucesso"
       }
Solicitação de dados de proxy

A solicitação proxy data é enviada pelo proxy para fornecer a interface do host dados de disponibilidade, histórico, descoberta e registro automático. Esse pedido é enviado a cada DataSenderFrequency (parâmetro de configuração de proxy) segundos.

nome tipo de valor descrição
proxy→servidor:
solicitação string 'dados de proxy'
host string o nome do proxy
sessão string token de sessão de dados
disponibilidade de interface array (opcional) array de objetos de dados de disponibilidade de interface
interfaceid número identificador de interface
disponível número Disponibilidade da interface

0, INTERFACE_AVAILABLE_UNKNOWN - desconhecido
1, *INTERFACE_AVAILABLE _TRUE* - disponível
2, INTERFACE_AVAILABLE_FALSE - indisponível
error string Mensagem de erro de interface ou string vazia
dados históricos array (opcional) array de objetos de dados históricos
itemid número identificador do item
relógio número valor do item timestamp (segundos)
ns número valor do item timestamp (nanossegundos)
valor string (opcional) valor do item
id number identificador de valor (contador crescente, único dentro de uma sessão de dados)
timestamp number (opcional) timestamp de itens do tipo de log
fonte string (opcional) valor da fonte do item do log de eventos
severidade número (opcional) valor de gravidade do item do log de eventos
eventid number (opcional) eventlog item eventid value
state string (opcional) estado do item
0, ITEM_STATE_NORMAL
1, *ITEM_STATE _NÃO SUPORTADO*
lastlogsize number (opcional) último tamanho de log dos itens do tipo de log
mtime number (opcional) modificar a hora dos itens do tipo de log
dados de descoberta array (opcional) array de objetos de dados de descoberta
relógio número o carimbo de data/hora dos dados de descoberta
druleid number o identificador da regra de descoberta
dcheckid number o identificador de verificação de descoberta ou nulo para dados da regra de descoberta
tipo número tipo de verificação de descoberta:

-1 dados da regra de descoberta
0, SVC_SSH - serviço SSH check
1, SVC_LDAP - verificação do serviço LDAP
2, SVC_SMTP - verificação do serviço SMTP
3, SVC_FTP - Verificação do serviço FTP
4, SVC_HTTP - Verificação do serviço HTTP
5, SVC_POP - Verificação do serviço POP
6, SVC_NNTP - Verificação do serviço NNTP
7, SVC_IMAP - Verificação do serviço IMAP
8, SVC_TCP - Verificação da disponibilidade da porta TCP
* *9, SVC_AGENT - agente Zabbix
10, SVC_SNMPv1 - agente SNMPv1
11, SVC_SNMPv2 - agente SNMPv2
12, SVC_ICMPPING - ping ICMP
13, SVC_SNMPv3 - agente SNMPv3
14, SVC_HTTPS - verificação de serviço HTTPS< br>15**, SVC_TELNET - Verificação de disponibilidade do Telnet
ip string o endereço IP do host
dns string o nome DNS do host
porta número (opcional) número da porta de serviço
key_ string (opcional) a chave do item para verificação de descoberta do tipo 9 SVC_AGENT
valor string (opcional) valor recebido do serviço, pode estar vazio para a maioria dos serviços
status number (opcional) status do serviço:

0, DOBJECT_STATUS_UP - Service UP
**1* , DOBJECT_STATUS_DOWN* - Serviço DOWN
registro automático array (opcional) array de objetos de dados de registro automático
relógio número o carimbo de data/hora dos dados de registro automático
host string o nome do host
ip string (opcional) o endereço IP do host
dns string (opcional) o nome DNS resolvido do endereço IP
port string (opcional) a porta do host
host_metadata string (opcional) os metadados do host enviados pelo agente (com base no parâmetro de configuração do agente HostMetadata ou HostMetadataItem)
tarefas array (opcional) array de tarefas
type number o tipo de tarefa:

0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - remote command result
status number o status de execução do comando remoto:

0, ZBX_TM_REMOTE_COMMAND_COMPLETED - o comando remoto foi concluído com sucesso<br >1, ZBX_TM_REMOTE_COMMAND_FAILED - o comando remoto falhou
error string (opcional) a mensagem de erro
parent_taskid number o ID da tarefa pai
mais número (opcional) 1 - há mais dados do histórico para enviar
relógio número (opcional) data de transferência de dados (segundos)
ns number (opcional) data de transferência de dados (nanossegundos)
versão string a versão do proxy (<major>.<minor>.<build>)
servidor→proxy:
resposta string as informações de sucesso da solicitação ('sucesso' ou 'falha')
tarefas array (opcional) array de tarefas
tipo número tipo de tarefa:

1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - comando remoto
relógio número hora de criação da tarefa
ttl number o tempo em segundos após o qual a tarefa expira
tipo de comando número o comando remoto type:

0, ZBX_SCRIPT_TYPE_CUSTOM_SCRIPT - usar script personalizado
1, ZBX_SCRIPT_TYPE_IPMI - usar IPMI
2, ZBX_SCRIPT_TYPE_SSH - usar SSH
3, ZBX_SCRIPT_TYPE_TELNET - usar Telnet
4 , ZBX_SCRIPT_TYPE_GLOBAL_SCRIPT - usa script global (atualmente funcionalmente equivalente ao script personalizado)
comando string o comando remoto a ser executado
execute_on number o destino de execução para scripts personalizados:

0, ZBX_SCRIPT_EXECUTE_ON_AGENT - executa script no agente
1, ZBX_SCRIPT_EXECUTE_ON_SERVER - executa script no servidor
2, ZBX_SCRIPT_EXECUTE_ON_PROXY - executa script no proxy
port number (opcional) a porta para comandos telnet e ssh
authtype number (opcional) o tipo de autenticação para comandos ssh
username string (opcional) o nome de usuário para comandos telnet e ssh
senha string (opcional) a senha para comandos telnet e ssh
chave pública string (opcional) a chave pública para comandos ssh
privatekey string (opcional) a chave privada para comandos ssh
parent_taskid number o ID da tarefa pai
hostid number hostid de destino

Exemplo:

proxy→servidor:

{
           "request": "dados proxy",
           "host": "Proxy nº 12",
           "sessão": "12345678901234567890123456789012",
           "disponibilidade de interface": [
               {
                   "interfaceid": 1,
                   "disponível": 1,
                   "erro": ""
           },
               {
                   "interfaceid": 2,
                   "disponível": 2,
                   "error": "Falha ao obter valor do agente: não é possível conectar a [[127.0.0.1]:10049]: [111] Conexão recusada"
           },
               {
                   "interfaceid": 3,
                   "disponível": 1,
                   "erro": ""
           },
               {
                   "interfaceid": 4,
                   "disponível": 1,
                   "erro": ""
           }
           ],
           "dados do histórico":[
               {
                   "itemid":"12345",
                   "relógio":1478609647,
                   "ns":332510044,
                   "valor":"52956612",
                   "id": 1
               },
               {
                   "itemid":"12346",
                   "relógio":1478609647,
                   "ns":330690279,
                   "estado":1,
                   "value":"Não foi possível encontrar informações para esta interface de rede em /proc/net/dev.",
                   "id": 2
               }
           ],
           "dados de descoberta":[
               {
                   "relógio": 1478608764,
                   "drule": 2,
                   "dcheck":3,
                   "tipo":12,
                   "ip":"10.3.0.10",
                   "dns":"vdebian",
                   "estado":1
               },
               {
                   "relógio": 1478608764,
                   "drule": 2,
                   "dcheck":null,
                   "tipo 1,
                   "ip":"10.3.0.10",
                   "dns":"vdebian",
                   "estado":1
               }
           ],
           "registro automático":[
               {
                   "relógio":1478608371,
                   "host":"Registrador1",
                   "ip":"10.3.0.1",
                   "dns":"localhost",
                   "porta":"10050"
               },
               {
                   "relógio":1478608381,
                   "host":"Logger2",
                   "ip":"10.3.0.2",
                   "dns":"localhost",
                   "porta":"10050"
               }
           ],
           "tarefas":[
               {
                   "tipo 2,
                   "relógio":1478608371,
                   "ttl": 600,
                   "commandtype": 2,
                   "command": "restart_service1.sh",
                   "execute_on": 2,
                   "porta": 80,
                   "authtype": 0,
                   "username": "userA",
                   "senha": "senha1",
                   "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",
                   "privatekey": "lsuusFncCzWBQ7RKNUsesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",
                   "parent_taskid": 10,
                   "hostid": 10070
               },
               {
                   "tipo 2,
                   "relógio":1478608381,
                   "ttl": 600,
                   "commandtype": 1,
                   "command": "restart_service2.sh",
                   "execute_on": 0,
                   "authtype": 0,
                   "nome do usuário": "",
                   "senha": "",
                   "chave pública": "",
                   "chave privada": "",
                   "parent_taskid": 20,
                   "hostid": 10084
               }
           ],
           "tarefas":[
               {
                   "tipo": 0,
                   "estado": 0,
                   "parent_taskid": 10
               },
               {
                   "tipo": 0,
                   "estado": 1,
                   "error": "Nenhuma permissão para executar a tarefa.",
                   "parent_taskid": 20
               }
           ],
           "versão":"5.4.0"
       }

servidor→proxy:

{
           "upload": "enabled",
           "response": "success",
           "tasks": [{
               "type": 2,
               "clock": 1665730986,
               "ttl": 600,
               "commandtype": 0,
               "command": "ping -c 3 127.0.0.1; case $? in [01]) true;; *) false;; esac",
               "execute_on": 2,
               "port": 0,
               "authtype": 0,
               "username": "",
               "password": "",
               "publickey": "",
               "privatekey": "",
               "alertid": 0,
               "parent_taskid": 4,
               "hostid": 10084
           }]
       }