Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
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 informados.
dserviceids ID/array Retorna apenas hosts que estão relacionados aos serviços descobertos informados.
graphids ID/array Retorna apenas hosts que possuem os gráficos informados.
hostids ID/array Retorna apenas hosts com os IDs de host informados.
httptestids ID/array Retorna apenas hosts que possuem os web checks informados.
interfaceids ID/array Retorna apenas hosts que usam as interfaces informadas.
itemids ID/array Retorna apenas hosts que possuem os items informados.
maintenanceids ID/array Retorna apenas hosts que são afetados pelas manutenções informadas.
monitored_hosts flag Retorna apenas hosts monitorados.
proxyids ID/array Retorna apenas hosts que são monitorados pelos proxies informados.
proxy_groupids ID/array Retorna apenas hosts que são monitorados pelos grupos de proxy informados.
templated_hosts flag Retorna hosts e templates.
templateids ID/array Retorna apenas hosts que estão vinculados aos templates informados.
triggerids ID/array Retorna apenas hosts que possuem os triggers informados.
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 web checks.

Sobrescreve o parâmetro with_monitored_httptests.
with_monitored_httptests flag Retorna apenas hosts que possuem web checks habilitados.
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 por tags.

Valores possíveis:
0 - (padrão) And/Or;
2 - Or.
severities integer/array Retorna hosts que possuem apenas problemas com as severidades informadas. Aplica-se apenas se o objeto de problema for trigger.
tags object/array Retorna apenas hosts com as tags informadas. 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 por 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 por 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 informadas também em todos os seus templates vinculados. Padrão:

Valores possíveis:
true - os templates vinculados também devem possuir as tags informadas;
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 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) momento em que um host que não é mais descoberto será excluído;
ts_disable - (timestamp) momento 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 informado.

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 informado (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 a serem pesquisadas. Se nenhuma opção adicional for informada, 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 informado (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 a serem pesquisadas. Se nenhuma opção adicional for informada, 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 informadas.

Valores possíveis: hostid, host, name, status.
countOutput boolean Esses parâmetros estã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, utilize 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, utilize selectDiscoveryData em seu lugar.

Valores de retorno

(integer/array) Retorna:

  • um array 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
       }

Pesquisando por tags de host

Recuperar 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
       }

Recuperar 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

Recupere 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

Recupere 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
       }

Recupere 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.