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.