itemprototype.get

Descrição

integer/array itemprototype.get(object parameters)

O método permite recuperar protótipos de itens de acordo com o parâmetros.

Este método está disponível para usuários de qualquer tipo. Permissões para chamar o método pode ser revogado nas configurações de função do usuário. Veja Usuário funções Para maiores informações.

Parâmetros

(object) Parâmetros que definem o output desejado.

O método suporta os seguintes parâmetros.

Parâmetro Tipo Descrição
discoveryids string/array Retorna apenas protótipos de item que pertencem às regras LLD fornecidas.
graphids string/array Retorna apenas protótipos de item que são usados nos protótipos de gráfico fornecidos.
hostids string/array Retorna apenas protótipos de item que pertencem aos hosts fornecidos.
inherited boolean Se definido como true , retorna apenas protótipos de item herdados de um template.
itemids string/array Retorna apenas protótipos de item com os IDs fornecidos.
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 string/array Retorna apenas protótipos de item que pertencem aos templates fornecidos.
triggerids string/array Retorna apenas protótipos de item que são usados nos protótipos de trigger fornecidos.
selectDiscoveryRule query Retorna uma propriedade discoveryRule com a regra de descoberta de baixo nível à qual o protótipo de item pertence.
selectGraphs query Retorna uma propriedade graphs com protótipos de gráfico que o protótipo de item usa.

Suporta count.
selectHosts query Retorna uma propriedade hosts com um array 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 protótipos de trigger que o protótipo de item pertece.

Suporta count.
selectPreprocessing query Retorna uma propriedade preprocessing com opções de pré-processamento de item.

Possui as seguintes propriedades:
type - (string) O tipo de opção de pré-processamento:
1 - Custom multiplier;
2 - Right trim;
3 - Left trim;
4 - Trim;
5 - Regular expression matching;
6 - Boolean to decimal;
7 - Octal to decimal;
8 - Hexadecimal to decimal;
9 - Simple change;
10 - Change per second;
11 - XML XPath;
12 - JSONPath;
13 - In range;
14 - Matches regular expression;
15 - Does not match regular expression;
16 - Check for error in JSON;
17 - Check for error in XML;
18 - Check for error using regular expression;
19 - Discard unchanged;
20 - Discard unchanged with heartbeat;
21 - JavaScript;
22 - Prometheus pattern;
23 - Prometheus to JSON;
24 - CSV to JSON;
25 - Replace;
26 - Check for not supported value;
27- XML to JSON.

params - (string) Parâmetros adicionais usados pela opção de pré-processamento. Múltiplos parâmetros são separados por caractere LF (\n).
error_handler - (string) Tipo de ação usada em caso de falha na etapa de pré-processamento:
0 - Mensagem de erro definida pelo servidor Zabbix;
1 - Descartar valor;
2 - Definir valor personalizado;
3 - Definir mensagem de erro personalizada.

error_handler_params - (string) Parâmetros do manipulador de erros.
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 fornecido.

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

Suporta filtros 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 sub-seleções.

Aplica-se às seguintes sub-seleções:
selectGraphs - resultados serão ordenados por name;
selectTriggers - resultados serão ordenados por description.
sortfield string/array Ordena o resultado pelas propriedades fornecidas.

Valores possíveis são: itemid, name, key_, delay, type e status.
countOutput boolean Esses parâmetros sendo comuns a todos os métodos get são descritos em detalhes no reference commentary.
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 tiver sido usado.

Exemplos

Recuperando protótipos de itens de uma regra LLD

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

Requisição:

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

Resposta:

{
           "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": "",
                   "interfaceid": "0",
                   "description": "",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "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": "Processor load (1 min average per core)",
                   "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": "",
                   "interfaceid": "0",
                   "description": "The processor load is calculated as system CPU load divided by number of CPU cores.",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "timeout": "3s",
                   "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",
                   "lastclock": "0",
                   "lastns": "0",
                   "lastvalue": "0",
                   "prevvalue": "0",
                   "discover": "0",
                   "uuid": "",
                   "parameters": []
               }
           ],
           "id": 1
       }

Encontrando item dependente

Encontre um item Dependente para o item com ID "25545".

Solicitação:

{
           "jsonrpc": "2.0",
           "método": "item.get",
           "parâmetros": {
               "saída": "estender",
               "filtro": {
                   "tipo": "18",
                   "master_itemid": "25545"
               },
               "limite": "1"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Resposta:

{
           "jsonrpc": "2.0",
           "resultado": [
               {
                   "itemid": "25547",
                   "tipo": "18",
                   "snmp_oid": "",
                   "hostid": "10116",
                   "nome": "Segundos",
                   "key_": "apache.status.uptime.seconds",
                   "atraso": "0",
                   "história": "90d",
                   "tendências": "365d",
                   "estado": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "unidades": "",
                   "Fórmula": "",
                   "erro": "",
                   "logtimefmt": "",
                   "templateid": "0",
                   "valuemap": "0",
                   "parâmetros": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "nome do usuário": "",
                   "senha": "",
                   "chave pública": "",
                   "chave privada": "",
                   "bandeiras": "0",
                   "interfaceid": "0",
                   "Descrição": "",
                   "link_inventário": "0",
                   "vida": "30d",
                   "estado": "0",
                   "evaltype": "0",
                   "master_itemid": "25545",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "tempo limite": "3s",
                   "url": "",
                   "query_fields": [],
                   "Postagens": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "proxy HTTP": "",
                   "cabeçalhos": [],
                   "recuperar_modo": "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",
                   "último relógio": "0",
                   "últimos": "0",
                   "último valor": "0",
                   "valor anterior": "0",
                   "descobrir": "0",
                   "parâmetros": []
               }
           ],
           "id": 1
       }

Localizar protótipo de item do agente HTTP

Encontre o protótipo do item do agente HTTP com o método de solicitação HEAD para ID do host.

Solicitação:

{
           "jsonrpc": "2.0",
           "método": "itemprototype.get",
           "parâmetros": {
               "hostids": "10254",
               "filtro": {
                   "tipo": "19",
                   "request_method": "3"
               }
           },
           "id": 17,
           "auth": "d678e0b85688ce578ff061bd29a20d3b"
       }

Resposta:

{
           "jsonrpc": "2.0",
           "resultado": [
               {
                   "itemid": "28257",
                   "tipo": "19",
                   "snmp_oid": "",
                   "hostid": "10254",
                   "nome": "descoberto",
                   "key_": "item[{#INAME}]",
                   "atraso": "{#IUPDATE}",
                   "história": "90d",
                   "tendências": "30d",
                   "estado": "0",
                   "value_type": "3",
                   "trapper_hosts": "",
                   "unidades": "",
                   "Fórmula": "",
                   "erro": "",
                   "logtimefmt": "",
                   "templateid": "28255",
                   "valuemap": "0",
                   "parâmetros": "",
                   "ipmi_sensor": "",
                   "authtype": "0",
                   "nome do usuário": "",
                   "senha": "",
                   "chave pública": "",
                   "chave privada": "",
                   "bandeiras": "2",
                   "interfaceid": "2",
                   "Descrição": "",
                   "link_inventário": "0",
                   "vida": "30d",
                   "estado": "0",
                   "evaltype": "0",
                   "jmx_endpoint": "",
                   "master_itemid": "0",
                   "tempo limite": "3s",
                   "url": "{#IURL}",
                   "query_fields": [],
                   "Postagens": "",
                   "status_codes": "",
                   "follow_redirects": "0",
                   "post_type": "0",
                   "proxy HTTP": "",
                   "cabeçalhos": [],
                   "recuperar_modo": "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",
                   "descobrir": "0",
                   "parâmetros": []
               }
           ],
           "id": 17
       }

Consulte também

Fonte

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