itemprototype.get

Descrição

integer/array itemprototype.get(object parameters)

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

Parameter Type Description
discoveryids ID/array Retorna apenas protótipos de item que pertencem às regras de LLD informadas.
graphids ID/array Retorna apenas protótipos de item que são usados nos protótipos de gráfico informados.
hostids ID/array Retorna apenas protótipos de item que pertencem aos hosts informados.
inherited boolean Se definido como true, retorna apenas protótipos de item herdados de um template.
itemids ID/array Retorna apenas protótipos de item com os IDs informados.
monitored boolean Se definido como true, retorna apenas protótipos de item habilitados que pertencem a hosts monitorados.
templated boolean Se definido como true, retorna apenas protótipos de item que pertencem a templates.
templateids ID/array Retorna apenas protótipos de item que pertencem aos templates informados.
triggerids ID/array Retorna apenas protótipos de item que são usados nos protótipos de trigger informados.
selectDiscoveryData query Retorna uma propriedade discoveryData com os dados do objeto de descoberta do protótipo de item. O objeto de descoberta do protótipo de item vincula um protótipo de item descoberto ao protótipo de item a partir do qual ele foi descoberto.

Ele possui as seguintes propriedades:
parent_itemid - (string) ID do protótipo de item a partir do qual o protótipo de item foi criado;
key_ - (string) chave do protótipo de item;
status - (int) status da descoberta do protótipo de item:
0 - (default) o protótipo de item foi descoberto,
1 - o protótipo de item não está mais descoberto;
ts_delete - (timestamp) momento em que um protótipo de item que não está mais descoberto será excluído;
ts_disable - (timestamp) momento em que um protótipo de item que não está mais descoberto será desabilitado;
disable_source - (int) indicador de se o protótipo de item foi desabilitado por uma regra de LLD ou manualmente:
0 - (default) desabilitado automaticamente,
1 - desabilitado por uma regra de LLD.
selectDiscoveryRule query Retorna uma propriedade discoveryRule com a regra de descoberta em baixo nível à qual o protótipo de item pertence.
selectDiscoveryRulePrototype query Retorna uma propriedade discoveryRulePrototype com o protótipo de regra de LLD pai ao qual o protótipo de item pertence.
selectGraphs query Retorna uma propriedade graphs com os protótipos de gráfico nos quais o protótipo de item é usado.

Suporta count.
selectHosts query Retorna uma propriedade hosts com uma matriz de hosts aos quais o protótipo de item pertence.
selectTags query Retorna as tags do protótipo de item na propriedade tags.
selectTriggers query Retorna uma propriedade triggers com os protótipos de trigger nos quais o protótipo de item é usado.

Suporta count.
selectPreprocessing query Retorna uma propriedade preprocessing com as opções de pré-processamento do protótipo de item.
selectValueMap query Retorna uma propriedade valuemap com o mapa de valor do protótipo de item.
filter object Retorna apenas os resultados que correspondem exatamente ao filtro informado.

Aceita um objeto, em que as chaves são nomes de propriedades e os valores são um único valor ou uma matriz de valores com os quais comparar.

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

Suporta propriedades adicionais:
host - nome técnico do host ao qual o protótipo de item pertence.
limitSelects integer Limita o número de registros retornados por subconsultas.

Aplica-se às seguintes subconsultas:
selectGraphs - os resultados serão ordenados por name;
selectTriggers - os resultados serão ordenados por description.
sortfield string/array Ordena o resultado pelas propriedades informadas.

Valores possíveis: itemid, name, key_, delay, type, status, history, trends, discovered.
countOutput boolean Esses parâmetros são descritos no comentário de referência.
editable boolean
excludeSearch boolean
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 item de uma regra LLD

Recupere todos os protótipos de item para um ID específico de regra LLD.

Request:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.get",
    "params": {
        "output": "extend",
        "discoveryids": "27426"
    },
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "23077",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10079",
            "name": "Incoming network traffic on en0",
            "key_": "net.if.in[en0]",
            "delay": "1m",
            "history": "1w",
            "trends": "365d",
            "status": "0",
            "value_type": "3",
            "trapper_hosts": "",
            "units": "bps",
            "logtimefmt": "",
            "templateid": "0",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "2",
            "interfaceid": "0",
            "description": "",
            "evaltype": "0",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "url": "",
            "query_fields": [],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "0",
            "output_format": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "discover": "0",
            "uuid": "",
            "parameters": []
        },
        {
            "itemid": "10010",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10001",
            "name": "Carga do processador (média de 1 min por núcleo)",
            "key_": "system.cpu.load[percpu,avg1]",
            "delay": "1m",
            "history": "1w",
            "trends": "365d",
            "status": "0",
            "value_type": "0",
            "trapper_hosts": "",
            "units": "",
            "logtimefmt": "",
            "templateid": "0",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "2",
            "interfaceid": "0",
            "description": "A carga do processador é calculada como a carga de CPU do sistema dividida pelo número de núcleos de CPU.",
            "evaltype": "0",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "url": "",
            "query_fields": [],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "0",
            "output_format": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "discover": "0",
            "uuid": "",
            "parameters": []
        }
    ],
    "id": 1
}

Encontrando item dependente

Encontre um item dependente para um ID de item específico.

Request:

{
    "jsonrpc": "2.0",
    "method": "item.get",
    "params": {
        "output": "extend",
        "filter": {
            "type": 18,
            "master_itemid": "25545"
        },
        "limit": "1"
    },
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "25547",
            "type": "18",
            "snmp_oid": "",
            "hostid": "10116",
            "name": "Seconds",
            "key_": "apache.status.uptime.seconds",
            "delay": "0",
            "history": "90d",
            "trends": "365d",
            "status": "0",
            "value_type": "3",
            "trapper_hosts": "",
            "units": "",
            "logtimefmt": "",
            "templateid": "0",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "0",
            "interfaceid": "0",
            "description": "",
            "evaltype": "0",
            "master_itemid": "25545",
            "jmx_endpoint": "",
            "timeout": "",
            "url": "",
            "query_fields": [],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "0",
            "output_format": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "discover": "0",
            "uuid": "",
            "parameters": []
        }
    ],
    "id": 1
}

Encontrar prototype de item de HTTP agent

Encontrar prototype de item de HTTP agent com método de requisição HEAD para um ID de host específico.

Request:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.get",
    "params": {
        "hostids": "10254",
        "filter": {
            "type": 19,
            "request_method": 3
        }
    },
    "id": 1
}

Response:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "28257",
            "type": "19",
            "snmp_oid": "",
            "hostid": "10254",
            "name": "discovered",
            "key_": "item[{#INAME}]",
            "delay": "{#IUPDATE}",
            "history": "90d",
            "trends": "30d",
            "status": "0",
            "value_type": "3",
            "trapper_hosts": "",
            "units": "",
            "logtimefmt": "",
            "templateid": "28255",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "2",
            "interfaceid": "2",
            "description": "",
            "evaltype": "0",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "url": "{#IURL}",
            "query_fields": [],
            "posts": "",
            "status_codes": "",
            "follow_redirects": "0",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "3",
            "output_format": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "discover": "0",
            "uuid": "",
            "parameters": []
        }
    ],
    "id": 1
}

Veja também

Fonte

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