template.get
Descrição
integer/array template.get(object parameters)
O método permite recuperar templates de acordo com os parâmetros informados.
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. Consulte Funções de usuário para obter mais informações.
Parâmetros
(object) Parâmetros que definem a saída desejada.
O método é compatível com os seguintes parâmetros.
| Parâmetro | Tipo | Descrição |
|---|---|---|
| templateids | ID/array | Retorna somente os templates com os IDs de template especificados. |
| groupids | ID/array | Retorna somente os templates que pertencem aos grupos de templates especificados. |
| parentTemplateids | ID/array | Retorna somente os templates aos quais o template especificado está vinculado. |
| hostids | ID/array | Retorna somente os templates vinculados aos hosts/templates especificados. |
| graphids | ID/array | Retorna somente os templates que contêm os graphs especificados. |
| itemids | ID/array | Retorna somente os templates que contêm os items especificados. |
| triggerids | ID/array | Retorna somente os templates que contêm os triggers especificados. |
| with_items | flag | Retorna somente os templates que têm items. |
| with_triggers | flag | Retorna somente os templates que têm triggers. |
| with_graphs | flag | Retorna somente os templates que têm graphs. |
| with_httptests | flag | Retorna somente os templates que têm cenários web. |
| evaltype | integer | Método de avaliação de tags. Valores possíveis: 0 - (padrão) E/Ou; 2 - Ou. |
| tags | object/array | Retorna somente os templates com as tags especificadas. Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].Uma matriz vazia retorna todos os templates. Valores possíveis de operador: 0 - (padrão) Contém; 1 - É igual a; 2 - Não contém; 3 - Não é igual a; 4 - Existe; 5 - Não existe. |
| inheritedTags | boolean | Retorna templates que também têm as tags especificadas nos templates vinculados.Valores possíveis: true - os templates vinculados também devem ter as tags especificadas;false - (padrão) as tags dos templates vinculados são ignoradas. |
| selectInheritedTags | query | Retorna uma propriedade inheritedTags com as tags presentes nos templates vinculados. |
| selectTags | query | Retorna as tags do template na propriedade tags. |
| selectDiscoveryRules | query | Retorna uma propriedade discoveryRules com as regras de LLD do template.É compatível com count. |
| selectHosts | query | Retorna os hosts vinculados ao template na propriedade hosts.É compatível com count. |
| selectTemplateGroups | query | Retorna os grupos de templates aos quais o template pertence na propriedade templategroups. |
| selectTemplates | query | Retorna os templates aos quais o template especificado está vinculado na propriedade templates.É compatível com count. |
| selectParentTemplates | query | Retorna os templates vinculados ao template especificado na propriedade parentTemplates.É compatível com count. |
| selectHttpTests | query | Retorna os cenários web do template na propriedade httpTests.É compatível com count. |
| selectItems | query | Retorna os items do template na propriedade items.É compatível com count. |
| selectTriggers | query | Retorna os triggers do template na propriedade triggers.É compatível com count. |
| selectGraphs | query | Retorna os graphs do template na propriedade graphs.É compatível com count. |
| selectMacros | query | Retorna as macros do template na propriedade macros. |
| selectDashboards | query | Retorna os dashboards do template na propriedade dashboards.É compatível com count. |
| selectValueMaps | query | Retorna uma propriedade valuemaps com os mapas de valores do template. |
| limitSelects | integer | Limita o número de registros retornados pelas subseleções. Aplica-se às seguintes subseleções: selectTemplates - os resultados serão ordenados por name;selectHosts - ordenados por host;selectParentTemplates - ordenados por host;selectItems - ordenados por name;selectDiscoveryRules - ordenados por name;selectTriggers - ordenados por description;selectGraphs - ordenados por name;selectDashboards - ordenados por name. |
| sortfield | string/array | Ordena o resultado pelas propriedades especificadas. Valores possíveis: hostid, host, name, status. |
| 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 | |
| selectDiscoveries | query | Retorna as descobertas de baixo nível do template na propriedade discoveries.É compatível com count.Esta consulta está obsoleta; use selectDiscoveryRules em seu lugar. |
Valores de retorno
(integer/array) Retorna:
- um array de objetos;
- a contagem de objetos recuperados, se o parâmetro
countOutputtiver sido usado.
Exemplos
Recuperando templates por nome
Recupere todos os dados sobre dois templates chamados "Linux by Zabbix agent" e "Windows by Zabbix agent".
{
"jsonrpc": "2.0",
"method": "template.get",
"params": {
"output": "extend",
"filter": {
"host": [
"Linux by Zabbix agent",
"Windows by Zabbix agent"
]
}
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": [
{
"proxyid": "0",
"host": "Linux by Zabbix agent",
"status": "3",
"ipmi_authtype": "-1",
"ipmi_privilege": "2",
"ipmi_username": "",
"ipmi_password": "",
"maintenanceid": "0",
"maintenance_status": "0",
"maintenance_type": "0",
"maintenance_from": "0",
"name": "Linux by Zabbix agent",
"flags": "0",
"templateid": "10001",
"description": "Este é um template oficial para Linux. Ele requer o Zabbix agent 8.0 ou mais recente.\r\n\r\nObservações sobre a descoberta de sistemas de arquivos (FS):\r\n- O sistema de arquivos ext4/3/2 reserva espaço para uso privilegiado, normalmente definido como 5% por padrão.\r\n- O BTRFS aloca, por padrão, 10% do volume para suas próprias necessidades.\r\n- Para reduzir possíveis desastres, os triggers de uso do FS são baseados no espaço máximo disponível.\r\n - Fórmula de utilização: 'pused = 100 - 100 * (available / total - free + available)'\r\n- O gráfico de utilização do FS, derivado de protótipos de gráfico, representa o espaço reservado do FS como a diferença entre o espaço usado e o disponível no volume total.\r\n\r\nVocê pode discutir este template ou deixar seu feedback em nosso fórum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387225-discussion-thread-for-official-zabbix-template-for-linux\r\n\r\nGerado pela ferramenta oficial de templates do Zabbix, \"Templator\"",
"tls_connect": "1",
"tls_accept": "1",
"tls_issuer": "",
"tls_subject": "",
"tls_psk_identity": "",
"tls_psk": "",
"custom_interfaces": "0",
"uuid": "f8f7908280354f2abeed07dc788c3747",
"vendor_name": "Zabbix",
"vendor_version": "8.2-2",
"proxy_groupid": "0",
"monitored_by": "0",
"wizard_ready": "1",
"readme": "## Visão geral\r\n\r\nEste é um template oficial para Linux. Ele requer o Zabbix agent 8.0 ou mais recente.\r\n\r\n#### Observações sobre a descoberta de sistemas de arquivos (FS):\r\n- O FS ext4/3/2 reserva espaço para uso privilegiado, normalmente definido como 5% por padrão.\r\n- O BTRFS aloca, por padrão, 10% do volume para suas próprias necessidades.\r\n- Para reduzir possíveis desastres, os triggers de uso do FS são baseados no espaço máximo disponível.\r\n - Fórmula de utilização: `pused = 100 - 100 * (available / total - free + available)`\r\n- O gráfico de utilização do FS, derivado de protótipos de gráfico, representa o espaço reservado do FS como a diferença entre o espaço usado e o disponível no volume total."
},
{
"proxyid": "0",
"host": "Windows by Zabbix agent",
"status": "3",
"ipmi_authtype": "-1",
"ipmi_privilege": "2",
"ipmi_username": "",
"ipmi_password": "",
"maintenanceid": "0",
"maintenance_status": "0",
"maintenance_type": "0",
"maintenance_from": "0",
"name": "Windows by Zabbix agent",
"flags": "0",
"templateid": "10081",
"description": "Este é um template oficial para Windows. Ele requer o Zabbix agent 8.0 ou mais recente.\r\n\r\nVocê pode discutir este template ou deixar seu feedback em nosso fórum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows\r\n\r\nGerado pela ferramenta oficial de templates do Zabbix, \"Templator\"",
"tls_connect": "1",
"tls_accept": "1",
"tls_issuer": "",
"tls_subject": "",
"tls_psk_identity": "",
"tls_psk": "",
"custom_interfaces": "0",
"uuid": "13b06904a6bf41cbb795e3193d896340",
"vendor_name": "Zabbix",
"vendor_version": "8.2-2",
"proxy_groupid": "0",
"monitored_by": "0",
"wizard_ready": "1",
"readme": "## Visão geral\r\n\r\nEste é um template oficial para Windows. Ele requer o Zabbix agent 8.0 ou mais recente."
}
],
"id": 1
}
Recuperando grupos de templates
Recupere os grupos de templates dos quais o template "Linux by Zabbix agent" é membro.
{
"jsonrpc": "2.0",
"method": "template.get",
"params": {
"output": ["hostid"],
"selectTemplateGroups": "extend",
"filter": {
"host": [
"Linux by Zabbix agent"
]
}
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": [
{
"templateid": "10001",
"templategroups": [
{
"groupid": "10",
"name": "Templates/Operating systems",
"uuid": "846977d1dfed4968bc5f8bdb363285bc"
}
]
}
],
"id": 1
}
Recuperando hosts por template
Recupere hosts que tenham o template "10001" (Linux por Zabbix agent) vinculado a eles.
{
"jsonrpc": "2.0",
"method": "template.get",
"params": {
"output": "templateid",
"templateids": "10001",
"selectHosts": ["hostid", "name"]
},
"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 tags de template
Recuperar templates que possuem a tag "host-name" igual a "{HOST.NAME}".
{
"jsonrpc": "2.0",
"method": "template.get",
"params": {
"output": ["hostid"],
"selectTags": "extend",
"evaltype": 0,
"tags": [
{
"tag": "host-name",
"value": "{HOST.NAME}",
"operator": 1
}
]
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": [
{
"templateid": "10402",
"tags": [
{
"tag": "host-name",
"value": "{HOST.NAME}"
}
]
}
],
"id": 1
}
Veja também
Fonte
CTemplate::get() em ui/include/classes/api/services/CTemplate.php.