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.

hostprototype.get

Descrição

integer/array hostprototype.get(object parameters)

O método permite recuperar protótipos de host 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

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

O método suporta os seguintes parâmetros.

Parâmetro Tipo Descrição
hostids ID/array Retorna apenas protótipos de host com os IDs fornecidos.
discoveryids ID/array Retorna apenas protótipos de host que pertencem às regras LLD fornecidas.
inherited boolean Se definido como true, retorna apenas items herdados de um template.
selectDiscoveryData query Retorna uma propriedade discoveryData com os dados do objeto de descoberta do protótipo de host. O objeto de descoberta do protótipo de host vincula um protótipo de 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 protótipo de host foi criado;
status - (int) status da descoberta do protótipo de host:
0 - (padrão) protótipo de host foi descoberto,
1 - protótipo de host não é mais descoberto;
ts_delete - (timestamp) hora em que um protótipo de host que não é mais descoberto será excluído;
ts_disable - (timestamp) hora em que um protótipo de host que não é mais descoberto será desabilitado;
disable_source - (int) indicador se o protótipo de 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 LLD à qual o protótipo de host pertence.
selectDiscoveryRulePrototype query Retorna uma propriedade discoveryRulePrototype com o protótipo de regra LLD pai ao qual o protótipo de host pertence.
selectInterfaces query Retorna uma propriedade interfaces com as interfaces personalizadas do protótipo de host.
selectGroupLinks query Retorna uma propriedade groupLinks com os links de grupo do protótipo de host.
selectGroupPrototypes query Retorna uma propriedade groupPrototypes com os protótipos de grupo do protótipo de host.
selectMacros query Retorna uma propriedade macros com as macros do protótipo de host.
selectParentHost query Retorna uma propriedade parentHost com o host ao qual o protótipo de host pertence.
selectTags query Retorna uma propriedade tags com as tags do protótipo de host.
selectTemplates query Retorna uma propriedade templates com os templates vinculados ao protótipo de host.

Suporta count.
sortfield string/array Ordena o resultado pelas propriedades fornecidas.

Valores possíveis: hostid, host, name, status, discovered.
countOutput boolean Esses parâmetros são descritos no comentário de referência.
editable boolean
excludeSearch boolean
filter object
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valores de retorno

(integer/array) Retorna:

  • um array de objetos;
  • a contagem de objetos recuperados, se o parâmetro countOutput foi utilizado.

Exemplos

Recuperando protótipos de host de uma regra LLD

Recupere todos os protótipos de host, seus links de grupo, protótipos de grupo e tags de uma regra LLD.

Requisição:

{
           "jsonrpc": "2.0",
           "method": "hostprototype.get",
           "params": {
               "output": "extend",
               "selectInterfaces": "extend",
               "selectGroupLinks": "extend",
               "selectGroupPrototypes": "extend",
               "selectTags": "extend",
               "discoveryids": "23554"
           },
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10092",
                   "host": "{#HV.UUID}",
                   "name": "{#HV.UUID}",
                   "status": "0",
                   "templateid": "0",
                   "flags": "2",
                   "discover": "0",
                   "custom_interfaces": "1",
                   "inventory_mode": "-1",
                   "groupLinks": [
                       {
                           "group_prototypeid": "4",
                           "hostid": "10092",
                           "groupid": "7",
                           "templateid": "0"
                       }
                   ],
                   "groupPrototypes": [
                       {
                           "group_prototypeid": "7",
                           "hostid": "10092",
                           "name": "{#CLUSTER.NAME}",
                           "templateid": "0"
                       }
                   ],
                   "tags": [
                       {
                           "tag": "datacenter",
                           "value": "{#DATACENTER.NAME}"
                       },
                       {
                           "tag": "instance-type",
                           "value": "{#INSTANCE_TYPE}"
                       }
                   ],
                   "interfaces": [
                       {
                           "main": "1",
                           "type": "2",
                           "useip": "1",
                           "ip": "127.0.0.1",
                           "dns": "",
                           "port": "161",
                           "details": {
                               "version": "2",
                               "bulk": "1",
                               "community": "{$SNMP_COMMUNITY}",
                               "max_repetitions": "10"
                           }
                       }
                   ]
               }
           ],
           "id": 1
       }

Veja também

Fonte

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