template.get

Descrizione

integer/array template.get(object parameters)

Il 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 Ruoli utente.

Parametri

(object) Parametri che definiscono l'output desiderato.

Il metodo supporta i seguenti parametri.

Parametro Tipo Descrizione
templateids ID/array Restituisce solo i template con gli ID template specificati.
groupids ID/array Restituisce solo i template appartenenti ai gruppi di template specificati.
parentTemplateids ID/array Restituisce solo i template a cui è collegato il template specificato.
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;
2 - Non contiene;
3 - Non è uguale;
4 - Esiste;
5 - Non esiste.
inheritedTags boolean Restituisce i template che hanno i tags specificati anche nei template collegati.

Valori possibili:
true - i template collegati devono avere anch'essi 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 appartiene il template nella proprietà templategroups.
selectTemplates query Restituisce i template a cui è collegato il template specificato nella proprietà templates.

Supporta count.
selectParentTemplates query Restituisce i template 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 i dashboard del template nella proprietà dashboards.

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

Si applica alle seguenti sottoselezioni:
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 nella documentazione 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 discovery di basso livello del template nella proprietà discoveries.

Supporta count.

Questa query è deprecata; utilizzare 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 ai 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 ufficiale per Linux. Richiede Zabbix agent 8.0 o versione successiva.\r\n\r\nNote sul rilevamento dei filesystem (FS):\r\n- Il filesystem ext4/3/2 riserva spazio per l'uso privilegiato, generalmente impostato al 5% per impostazione predefinita.\r\n- BTRFS alloca per impostazione predefinita il 10% del volume per le proprie esigenze.\r\n- Per ridurre il rischio di potenziali disastri, i trigger sull'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 dell'utilizzo del FS, derivato dai prototipi di grafico, rappresenta 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.2-2",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "wizard_ready": "1",
            "readme": "## Panoramica\r\n\r\nQuesto è un template ufficiale per Linux. Richiede Zabbix agent 8.0 o versione successiva.\r\n\r\n#### Note sul rilevamento dei filesystem (FS):\r\n- Il FS ext4/3/2 riserva spazio per l'uso privilegiato, generalmente impostato al 5% per impostazione predefinita.\r\n- BTRFS alloca per impostazione predefinita il 10% del volume per le proprie esigenze.\r\n- Per ridurre il rischio di potenziali disastri, i trigger sull'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 dell'utilizzo del FS, derivato dai prototipi di grafico, rappresenta 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 ufficiale per Windows. 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.2-2",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "wizard_ready": "1",
            "readme": "## Panoramica\r\n\r\nQuesto è un template ufficiale per Windows. 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.