Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

host.get

Descrição

integer/array host.get(object parameters)

O método permite recuperar hosts de acordo com os parâmetros fornecidos.

Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações de função do usuário. Veja Funções de usuário para mais informações.

Parâmetros

(object) Parâmetros que definem a saída desejada.

O método suporta os seguintes parâmetros.

Parâmetro Tipo Descrição
groupids ID/array Retorna apenas hosts que pertencem aos grupos fornecidos.
dserviceids ID/array Retorna apenas hosts que estão relacionados aos serviços descobertos fornecidos.
graphids ID/array Retorna apenas hosts que possuem os gráficos fornecidos.
hostids ID/array Retorna apenas hosts com os IDs de host fornecidos.
httptestids ID/array Retorna apenas hosts que possuem as verificações web fornecidas.
interfaceids ID/array Retorna apenas hosts que usam as interfaces fornecidas.
itemids ID/array Retorna apenas hosts que possuem os items fornecidos.
maintenanceids ID/array Retorna apenas hosts que são afetados pelas manutenções fornecidas.
monitored_hosts flag Retorna apenas hosts monitorados.
proxyids ID/array Retorna apenas hosts que são monitorados pelos proxies fornecidos.
proxy_groupids ID/array Retorna apenas hosts que são monitorados pelos grupos de proxy fornecidos.
templated_hosts flag Retorna tanto hosts quanto templates.
templateids ID/array Retorna apenas hosts que estão vinculados aos templates fornecidos.
triggerids ID/array Retorna apenas hosts que possuem os triggers fornecidos.
with_items flag Retorna apenas hosts que possuem items.

Sobrescreve os parâmetros with_monitored_items e with_simple_graph_items.
with_item_prototypes flag Retorna apenas hosts que possuem protótipos de item.

Sobrescreve o parâmetro with_simple_graph_item_prototypes.
with_simple_graph_item_prototypes flag Retorna apenas hosts que possuem protótipos de item, que estão habilitados para criação e possuem tipo de informação numérica.
with_graphs flag Retorna apenas hosts que possuem gráficos.
with_graph_prototypes flag Retorna apenas hosts que possuem protótipos de gráfico.
with_httptests flag Retorna apenas hosts que possuem verificações web.

Sobrescreve o parâmetro with_monitored_httptests.
with_monitored_httptests flag Retorna apenas hosts que possuem verificações web habilitadas.
with_monitored_items flag Retorna apenas hosts que possuem items habilitados.

Sobrescreve o parâmetro with_simple_graph_items.
with_monitored_triggers flag Retorna apenas hosts que possuem triggers habilitados. Todos os items usados no trigger também devem estar habilitados.
with_simple_graph_items flag Retorna apenas hosts que possuem items com tipo de informação numérica.
with_triggers flag Retorna apenas hosts que possuem triggers.

Sobrescreve o parâmetro with_monitored_triggers.
withProblemsSuppressed boolean Retorna hosts que possuem problemas suprimidos.

Valores possíveis:
null - (padrão) todos os hosts;
true - apenas hosts com problemas suprimidos;
false - apenas hosts com problemas não suprimidos.
evaltype integer Regras para busca de tags.

Valores possíveis:
0 - (padrão) E/Ou;
2 - Ou.
severities integer/array Retorna hosts que possuem apenas problemas com as gravidades fornecidas. Aplica-se apenas se o objeto de problema for trigger.
tags object/array Retorna apenas hosts com as tags fornecidas. Correspondência exata por tag e busca sensível ou não a maiúsculas/minúsculas pelo valor da tag, dependendo do valor do operador.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Um array vazio retorna todos os hosts.

Valores possíveis para o operador:
0 - (padrão) Contém (correspondência de substring, não sensível a maiúsculas/minúsculas);
1 - Igual (sensível a maiúsculas/minúsculas);
2 - Não contém (correspondência de substring, não sensível a maiúsculas/minúsculas);
3 - Diferente (sensível a maiúsculas/minúsculas);
4 - Existe;
5 - Não existe.
inheritedTags boolean Retorna hosts que possuem as tags fornecidas também em todos os seus templates vinculados. Padrão:

Valores possíveis:
true - os templates vinculados também devem possuir as tags fornecidas;
false - (padrão) as tags dos templates vinculados são ignoradas.
selectDiscoveryData query Retorna uma propriedade discoveryData com os dados do objeto de descoberta de host. O objeto de descoberta de host vincula um host descoberto a um protótipo de host do qual ele foi descoberto.

Possui as seguintes propriedades:
host - (string) ID do host;
parent_hostid - (string) ID do protótipo de host a partir do qual o host foi criado;
status - (int) status da descoberta do host:
0 - (padrão) host foi descoberto,
1 - host não é mais descoberto;
ts_delete - (timestamp) hora em que um host que não é mais descoberto será excluído;
ts_disable - (timestamp) hora em que um host que não é mais descoberto será desabilitado;
disable_source - (int) indicador se o host foi desabilitado por uma regra LLD ou manualmente:
0 - (padrão) desabilitado automaticamente,
1 - desabilitado por uma regra LLD.
selectDiscoveryRule query Retorna uma propriedade discoveryRule com a regra de descoberta de baixo nível que criou o host (a partir do protótipo de host no monitoramento VMware).
selectDiscoveryRules query Retorna uma propriedade discoveryRules com as regras LLD do host. Suporta count.
selectGraphs query Retorna uma propriedade graphs com os gráficos do host.

Suporta count.
selectHostGroups query Retorna uma propriedade hostgroups com os dados dos grupos de host aos quais o host pertence.
selectHttpTests query Retorna uma propriedade httpTests com os cenários web do host.

Suporta count.
selectInterfaces query Retorna uma propriedade interfaces com as interfaces do host.

Suporta count.
selectInventory query Retorna uma propriedade inventory com os dados de inventário do host.
selectItems query Retorna uma propriedade items com os items do host.

Suporta count.
selectMacros query Retorna uma propriedade macros com as macros do host.
selectParentTemplates query Retorna uma propriedade parentTemplates com os templates aos quais o host está vinculado.

Além dos campos do objeto Template, contém link_type - (integer) a forma como o template está vinculado ao host.
Valores possíveis:
0 - (padrão) vinculado manualmente;
1 - vinculado automaticamente por LLD.

Suporta count.
selectDashboards query Retorna uma propriedade dashboards.

Suporta count.
selectTags query Retorna uma propriedade tags com as tags do host.
selectInheritedTags query Retorna uma propriedade inheritedTags com as tags que estão em todos os templates vinculados ao host.
selectTriggers query Retorna uma propriedade triggers com os triggers do host.

Suporta count.
selectValueMaps query Retorna uma propriedade valuemaps com os mapas de valores do host.
filter object Retorna apenas os resultados que correspondem exatamente ao filtro fornecido.

Aceita um objeto, onde as chaves são nomes de propriedades e os valores são um único valor ou um array de valores para correspondência.

Não suporta propriedades do tipo de dado text data type.

Suporta propriedades adicionais: propriedades de interface de host.
limitSelects integer Limita o número de registros retornados por subconsultas.

Aplica-se às seguintes subconsultas:
selectParentTemplates - os resultados serão ordenados por host;
selectInterfaces;
selectItems - ordenados por name;
selectDiscoveryRules - ordenados por name;
selectTriggers - ordenados por description;
selectGraphs - ordenados por name;
selectDashboards - ordenados por name.
search object Retorna resultados que correspondam ao padrão fornecido (não sensível a maiúsculas/minúsculas).

Aceita um objeto, onde as chaves são nomes de propriedades e os valores são strings para busca. Se nenhuma opção adicional for fornecida, será realizada uma busca LIKE "%…%".

Suporta apenas propriedades dos tipos de dado string e text data type.

Suporta propriedades adicionais: propriedades de interface de host.
searchInventory object Retorna hosts que possuem dados de inventário que correspondam ao padrão fornecido (não sensível a maiúsculas/minúsculas).

Aceita um objeto, onde as chaves são nomes de propriedades e os valores são strings para busca. Se nenhuma opção adicional for fornecida, será realizada uma busca LIKE "%…%".

Suporta apenas propriedades dos tipos de dado string e text data type.
sortfield string/array Ordena o resultado pelas propriedades fornecidas.

Valores possíveis: hostid, host, name, status.
countOutput boolean Estes parâmetros são descritos no comentário de referência.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectDiscoveries query Retorna uma propriedade discoveries com as regras de descoberta de baixo nível do host.

Suporta count.

Esta consulta está obsoleta, por favor use selectDiscoveryRules em seu lugar.
selectHostDiscovery query Retorna uma propriedade hostDiscovery com os dados do objeto de descoberta de host.

Esta consulta está obsoleta, por favor use selectDiscoveryData em seu lugar.

Valores de retorno

(integer/array) Retorna:

  • uma matriz de objetos;
  • a contagem de objetos recuperados, se o parâmetro countOutput tiver sido usado.

Exemplos

Recuperando dados pelo nome

Recupere todos os dados sobre dois hosts chamados "Zabbix server" e "Linux server".

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "filter": {
                   "host": [
                       "Zabbix server",
                       "Linux server"
                   ]
               }
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10160",
                   "proxyid": "0",
                   "host": "Zabbix server",
                   "status": "0",
                   "ipmi_authtype": "-1",
                   "ipmi_privilege": "2",
                   "ipmi_username": "",
                   "ipmi_password": "",
                   "maintenanceid": "0",
                   "maintenance_status": "0",
                   "maintenance_type": "0",
                   "maintenance_from": "0",
                   "name": "Zabbix server",
                   "flags": "0",
                   "description": "The Zabbix monitoring server.",
                   "tls_connect": "1",
                   "tls_accept": "1",
                   "tls_issuer": "",
                   "tls_subject": "",
                   "proxy_groupid": "0",
                   "monitored_by": "0",
                   "inventory_mode": "1",
                   "active_available": "1",
                   "assigned_proxyid": "0"
               },
               {
                   "hostid": "10167",
                   "proxyid": "0",
                   "host": "Linux server",
                   "status": "0",
                   "ipmi_authtype": "-1",
                   "ipmi_privilege": "2",
                   "ipmi_username": "",
                   "ipmi_password": "",
                   "maintenanceid": "0",
                   "maintenance_status": "0",
                   "maintenance_type": "0",
                   "maintenance_from": "0",
                   "name": "Linux server",
                   "flags": "0",
                   "description": "",
                   "tls_connect": "1",
                   "tls_accept": "1",
                   "tls_issuer": "",
                   "tls_subject": "",
                   "proxy_groupid": "0",
                   "monitored_by": "0",
                   "inventory_mode": "1",
                   "active_available": "1",
                   "assigned_proxyid": "0"
               }
           ],
           "id": 1
       }

Recuperando grupos de hosts

Recupere os grupos de hosts dos quais o host "Zabbix server" é membro.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectHostGroups": "extend",
               "filter": {
                   "host": [
                       "Zabbix server"
                   ]
               }
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10085",
                   "hostgroups": [
                       {
                           "groupid": "2",
                           "name": "Linux servers",
                           "flags": "0",
                           "uuid": "dc579cd7a1a34222933f24f52a68bcd8"
                       },
                       {
                           "groupid": "4",
                           "name": "Zabbix servers",
                           "flags": "0",
                           "uuid": "6f6799aa69e844b4b3918f779f2abf08"
                       }
                   ]
               }
           ],
           "id": 1
       }

Recuperando templates vinculados

Recupere os IDs e nomes dos templates vinculados ao host "10084".

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectParentTemplates": [
                   "templateid",
                   "name"
               ],
               "hostids": "10084"
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10084",
                   "parentTemplates": [
                       {
                           "name": "Linux",
                           "templateid": "10001"
                       },
                       {
                           "name": "Zabbix Server",
                           "templateid": "10047"
                       }
                   ]
               }
           ],
           "id": 1
       }

Recuperando hosts por template

Recupere hosts que tenham o template "10001" (Linux by Zabbix agent) vinculado a eles.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid", "name"],
               "templateids": "10001"
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "templateid": "10001",
                   "hosts": [
                       {
                           "hostid": "10084",
                           "name": "Zabbix server"
                       },
                       {
                           "hostid": "10603",
                           "name": "Host 1"
                       },
                       {
                           "hostid": "10604",
                           "name": "Host 2"
                       }
                   ]
               }
           ],
           "id": 1
       }

Pesquisa por dados de inventário de host

Recupera hosts que contenham "Linux" no campo "OS" do inventário do host.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": [
                   "host"
               ],
               "selectInventory": [
                   "os"
               ],
               "searchInventory": {
                   "os": "Linux"
               }
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10084",
                   "host": "Zabbix server",
                   "inventory": {
                       "os": "Linux Ubuntu"
                   }
               },
               {
                   "hostid": "10107",
                   "host": "Linux server",
                   "inventory": {
                       "os": "Linux Mint"
                   }
               }
           ],
           "id": 1
       }

Pesquisa por tags de host

Recupera hosts que possuem a tag "host-name" igual a "linux-server".

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectTags": "extend",
               "evaltype": 0,
               "tags": [
                   {
                       "tag": "host-name",
                       "value": "linux-server",
                       "operator": 1
                   }
               ]
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10085",
                   "tags": [
                       {
                           "tag": "host-name",
                           "value": "linux-server",
                           "automatic": "0"
                       },
                       {
                           "tag": "os",
                           "value": "rhel-7",
                           "automatic": "0"
                       }
                   ]
               }
           ],
           "id": 1
       }

Recupera hosts que possuem essas tags não apenas no nível do host, mas também em seus templates pai vinculados.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "tags": [
                   {
                       "tag": "os",
                       "value": "rhel-7",
                       "operator": 1
                   }
               ],
               "inheritedTags": true
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10623",
                   "name": "PC room 1"
               },
               {
                   "hostid": "10601",
                   "name": "Office"
               }
           ],
           "id": 1
       }

Pesquisando host com tags e tags de template

Recupera um host com tags e todas as tags que estão vinculadas aos templates pai.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "hostids": 10502,
               "selectTags": ["tag", "value"],
               "selectInheritedTags": ["tag", "value"]
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10502",
                   "name": "Desktop",
                   "tags": [
                       {
                           "tag": "host-name",
                           "value": "linux-server"
                       },
                       {
                           "tag": "os",
                           "value": "rhel-7"
                       }
                   ],
                   "inheritedTags": [
                       {
                           "tag": "class",
                           "value": "os"
                       },
                       {
                           "tag": "target",
                           "value": "linux"
                       },
                       {
                           "tag": "os",
                           "value": "rhel-7"
                       }
                   ]
               }
           ],
           "id": 1
       }

Pesquisando hosts por gravidade do problema

Recuperar hosts que possuem problemas de "Desastre".

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "severities": 5
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10160",
                   "name": "Zabbix server"
               }
           ],
           "id": 1
       }

Recuperar hosts que possuem problemas de "Média" e "Alta" gravidade.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "severities": [3, 4]
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "20170",
                   "name": "Database"
               },
               {
                   "hostid": "20183",
                   "name": "workstation"
               }
           ],
           "id": 1
       }

Veja também

Fonte

CHost::get() em ui/include/classes/api/services/CHost.php.