template.get

Descrizione

integer/array template.get(object parameters)

Questo metodo consente di recuperare i template in base ai parametri specificati.

Questo metodo è disponibile per utenti di qualsiasi tipo. Le autorizzazioni per chiamare il metodo possono essere revocate nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere User roles.

Parametri

(object) Parametri che definiscono l'output desiderato.

Il metodo supporta i seguenti parametri.

Parametro Type Descrizione
templateids ID/array Restituisce solo i template con gli ID template specificati.
groupids ID/array Restituisce solo i template che appartengono ai gruppi di template specificati.
parentTemplateids ID/array Restituisce solo i template ai quali il template specificato è collegato.
hostids ID/array Restituisce solo i template collegati agli host/template specificati.
graphids ID/array Restituisce solo i template che contengono i grafici specificati.
itemids ID/array Restituisce solo i template che contengono gli item specificati.
triggerids ID/array Restituisce solo i template che contengono i trigger specificati.
with_items flag Restituisce solo i template che hanno item.
with_triggers flag Restituisce solo i template che hanno trigger.
with_graphs flag Restituisce solo i template che hanno grafici.
with_httptests flag Restituisce solo i template che hanno scenari web.
evaltype integer Metodo di valutazione dei tag.

Valori possibili:
0 - (predefinito) And/Or;
2 - Or.
tags object/array Restituisce solo i template con i tag specificati.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un array vuoto restituisce tutti i template.

Valori possibili di operator:
0 - (predefinito) Contiene;
1 - Uguale a;
2 - Non contiene;
3 - Diverso da;
4 - Esiste;
5 - Non esiste.
inheritedTags boolean Restituisce i template che hanno i tags specificati anche nei template collegati.

Valori possibili:
true - anche i template collegati devono avere i tag specificati;
false - (predefinito) i tag dei template collegati vengono ignorati.
selectInheritedTags query Restituisce una proprietà inheritedTags con i tag presenti nei template collegati.
selectTags query Restituisce i tag del template nella proprietà tags.
selectDiscoveryRules query Restituisce una proprietà discoveryRules con le regole LLD del template.

Supporta count.
selectHosts query Restituisce gli host collegati al template nella proprietà hosts.

Supporta count.
selectTemplateGroups query Restituisce i gruppi di template a cui il template appartiene nella proprietà templategroups.
selectTemplates query Restituisce i template ai quali il template specificato è collegato nella proprietà templates.

Supporta count.
selectParentTemplates query Restituisce i template che sono collegati al template specificato nella proprietà parentTemplates.

Supporta count.
selectHttpTests query Restituisce gli scenari web del template nella proprietà httpTests.

Supporta count.
selectItems query Restituisce gli item del template nella proprietà items.

Supporta count.
selectTriggers query Restituisce i trigger del template nella proprietà triggers.

Supporta count.
selectGraphs query Restituisce i grafici del template nella proprietà graphs.

Supporta count.
selectMacros query Restituisce le macro del template nella proprietà macros.
selectDashboards query Restituisce le dashboard del template nella proprietà dashboards.

Supporta count.
selectValueMaps query Restituisce una proprietà valuemaps con le mappe di valori del template.
limitSelects integer Limita il numero di record restituiti dalle sotto-selezioni.

Si applica alle seguenti sotto-selezioni:
selectTemplates - i risultati saranno ordinati per name;
selectHosts - ordinati per host;
selectParentTemplates - ordinati per host;
selectItems - ordinati per name;
selectDiscoveryRules - ordinati per name;
selectTriggers - ordinati per description;
selectGraphs - ordinati per name;
selectDashboards - ordinati per name.
sortfield string/array Ordina il risultato in base alle proprietà specificate.

Valori possibili: hostid, host, name, status.
countOutput boolean Questi parametri sono descritti nel commento di riferimento.
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 Restituisce le low-level discovery del template nella proprietà discoveries.

Supporta count.

Questa query è deprecata, usare invece selectDiscoveryRules.

Valori restituiti

(integer/array) Restituisce uno dei seguenti:

  • un array di oggetti;
  • il numero di oggetti recuperati, se è stato utilizzato il parametro countOutput.

Esempi

Recupero dei template per nome

Recupera tutti i dati relativi a due template denominati "Linux by Zabbix agent" e "Windows by Zabbix agent".

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": "extend",
        "filter": {
            "host": [
                "Linux by Zabbix agent",
                "Windows by Zabbix agent"
            ]
        }
    },
    "id": 1
}

Risposta:

{
    "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": "Questo è un template Linux ufficiale. Richiede Zabbix agent 8.0 o versione successiva.\r\n\r\nNote sul rilevamento del filesystem (FS):\r\n- Il filesystem ext4/3/2 riserva spazio per utilizzi privilegiati, in genere impostato al 5% per impostazione predefinita.\r\n- BTRFS alloca per impostazione predefinita il 10% del volume per le proprie esigenze.\r\n- Per mitigare potenziali problemi gravi, i trigger di utilizzo del FS si basano sullo spazio massimo disponibile.\r\n  - Formula di utilizzo: 'pused = 100 - 100 * (available / total - free + available)'\r\n- Il grafico di utilizzo del FS, derivato dai prototipi di grafico, riflette lo spazio riservato del FS come differenza tra lo spazio utilizzato e quello disponibile rispetto al volume totale.\r\n\r\nPuoi discutere di questo template o lasciare un feedback sul nostro forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387225-discussion-thread-for-official-zabbix-template-for-linux\r\n\r\nGenerato dallo strumento ufficiale per template 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.0-2",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "wizard_ready": "1",
            "readme": "## Panoramica\r\n\r\nQuesto è un template Linux ufficiale. Richiede Zabbix agent 8.0 o versione successiva.\r\n\r\n#### Note sul rilevamento del filesystem (FS):\r\n- Il FS ext4/3/2 riserva spazio per utilizzi privilegiati, in genere impostato al 5% per impostazione predefinita.\r\n- BTRFS alloca per impostazione predefinita il 10% del volume per le proprie esigenze.\r\n- Per mitigare potenziali problemi gravi, i trigger di utilizzo del FS si basano sullo spazio massimo disponibile.\r\n  - Formula di utilizzo: `pused = 100 - 100 * (available / total - free + available)`\r\n- Il grafico di utilizzo del FS, derivato dai prototipi di grafico, riflette lo spazio riservato del FS come differenza tra lo spazio utilizzato e quello disponibile rispetto al volume totale."
        },
        {
            "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": "Questo è un template Windows ufficiale. Richiede Zabbix agent 8.0 o versione successiva.\r\n\r\nPuoi discutere di questo template o lasciare un feedback sul nostro forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows\r\n\r\nGenerato dallo strumento ufficiale per template 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.0-2",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "wizard_ready": "1",
            "readme": "## Panoramica\r\n\r\nQuesto è un template Windows ufficiale. Richiede Zabbix agent 8.0 o versione successiva."
        }
    ],
    "id": 1
}

Recupero dei gruppi di template

Recupera i gruppi di template di cui il template "Linux by Zabbix agent" è membro.

Request:

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": ["hostid"],
        "selectTemplateGroups": "extend",
        "filter": {
            "host": [
                "Linux by Zabbix agent"
            ]
        }
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10001",
            "templategroups": [
                {
                    "groupid": "10",
                    "name": "Templates/Operating systems",
                    "uuid": "846977d1dfed4968bc5f8bdb363285bc"
                }
            ]
        }
    ],
    "id": 1
}

Recupero degli host per template

Recupera gli host a cui è collegato il template "10001" (Linux by Zabbix agent).

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": "templateid",
        "templateids": "10001",
        "selectHosts": ["hostid", "name"]
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10001",
            "hosts": [
                {
                    "hostid": "10084",
                    "name": "Zabbix server"
                },
                {
                    "hostid": "10603",
                    "name": "Host 1"
                },
                {
                    "hostid": "10604",
                    "name": "Host 2"
                }
            ]
        }
    ],
    "id": 1
}

Ricerca per tag del template

Recupera i template che hanno il tag "host-name" uguale a "{HOST.NAME}".

Request:

{
    "jsonrpc": "2.0",
    "method": "template.get",
    "params": {
        "output": ["hostid"],
        "selectTags": "extend",
        "evaltype": 0,
        "tags": [
            {
                "tag": "host-name",
                "value": "{HOST.NAME}",
                "operator": 1
            }
        ]
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10402",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "{HOST.NAME}"
                }
            ]
        }
    ],
    "id": 1
}

Vedi anche

Fonte

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