template.get

Opis

integer/array template.get(object parameters)

Metoda umożliwia pobieranie szablonów zgodnie z podanymi parametrami.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywołania metody mogą zostać odebrane w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.

Parametry

(object) Parametry definiujące żądane dane wyjściowe.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
templateids ID/array Zwraca tylko szablony o podanych identyfikatorach szablonów.
groupids ID/array Zwraca tylko szablony należące do podanych grup szablonów.
parentTemplateids ID/array Zwraca tylko szablony, do których podany szablon jest połączony.
hostids ID/array Zwraca tylko szablony połączone z podanymi hostami/szablonami.
graphids ID/array Zwraca tylko szablony zawierające podane wykresy.
itemids ID/array Zwraca tylko szablony zawierające podane pozycje.
triggerids ID/array Zwraca tylko szablony zawierające podane wyzwalacze.
with_items flag Zwraca tylko szablony zawierające pozycje.
with_triggers flag Zwraca tylko szablony zawierające wyzwalacze.
with_graphs flag Zwraca tylko szablony zawierające wykresy.
with_httptests flag Zwraca tylko szablony zawierające scenariusze web.
evaltype integer Metoda oceny tagów.

Możliwe wartości:
0 - (domyślnie) And/Or;
2 - Or.
tags object/array Zwraca tylko szablony z podanymi tagami.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie szablony.

Możliwe wartości operatora:
0 - (domyślnie) Zawiera;
1 - Jest równe;
2 - Nie zawiera;
3 - Nie jest równe;
4 - Istnieje;
5 - Nie istnieje.
inheritedTags boolean Zwraca szablony, które mają podane tags również w połączonych szablonach.

Możliwe wartości:
true - połączone szablony również muszą mieć podane tagi;
false - (domyślnie) tagi z połączonych szablonów są ignorowane.
selectInheritedTags query Zwraca właściwość inheritedTags z tagami znajdującymi się w połączonych szablonach.
selectTags query Zwraca tagi szablonu we właściwości tags.
selectDiscoveryRules query Zwraca właściwość discoveryRules zawierającą reguły LLD szablonu.

Obsługuje count.
selectHosts query Zwraca hosty połączone z szablonem we właściwości hosts.

Obsługuje count.
selectTemplateGroups query Zwraca grupy szablonów, do których należy szablon, we właściwości templategroups.
selectTemplates query Zwraca szablony, z którymi podany szablon jest połączony, we właściwości templates.

Obsługuje count.
selectParentTemplates query Zwraca szablony połączone z podanym szablonem we właściwości parentTemplates.

Obsługuje count.
selectHttpTests query Zwraca scenariusze web z szablonu we właściwości httpTests.

Obsługuje count.
selectItems query Zwraca pozycje z szablonu we właściwości items.

Obsługuje count.
selectTriggers query Zwraca wyzwalacze z szablonu we właściwości triggers.

Obsługuje count.
selectGraphs query Zwraca wykresy z szablonu we właściwości graphs.

Obsługuje count.
selectMacros query Zwraca makra z szablonu we właściwości macros.
selectDashboards query Zwraca pulpity nawigacyjne z szablonu we właściwości dashboards.

Obsługuje count.
selectValueMaps query Zwraca właściwość valuemaps zawierającą mapowania wartości szablonu.
limitSelects integer Ogranicza liczbę rekordów zwracanych przez podzapytania.

Dotyczy następujących podzapytań:
selectTemplates - wyniki będą sortowane według name;
selectHosts - sortowane według host;
selectParentTemplates - sortowane według host;
selectItems - sortowane według name;
selectDiscoveryRules - sortowane według name;
selectTriggers - sortowane według description;
selectGraphs - sortowane według name;
selectDashboards - sortowane według name.
sortfield string/array Sortuje wynik według podanych właściwości.

Możliwe wartości: hostid, host, name, status.
countOutput boolean Te parametry opisano w komentarzu referencyjnym.
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 Zwraca odkrycia niskopoziomowe z szablonu we właściwości discoveries.

Obsługuje count.

To zapytanie jest przestarzałe; zamiast niego użyj selectDiscoveryRules.

Zwracane wartości

(integer/array) Zwraca:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli został użyty parametr countOutput.

Przykłady

Pobieranie szablonów według nazwy

Pobierz wszystkie dane dotyczące dwóch szablonów o nazwach „Linux by Zabbix agent” i „Windows by Zabbix agent”.

Żądanie:

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

Odpowiedź:

{
    "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": "To jest oficjalny szablon systemu Linux. Wymaga agenta Zabbix w wersji 8.0 lub nowszej.\r\n\r\nUwagi dotyczące wykrywania systemów plików (FS):\r\n- System plików ext4/3/2 rezerwuje miejsce do użytku uprzywilejowanego, zazwyczaj domyślnie ustawione na 5%.\r\n- BTRFS domyślnie przydziela 10% woluminu na własne potrzeby.\r\n- Aby ograniczyć ryzyko potencjalnych awarii, wyzwalacze dotyczące użycia systemu plików są oparte na maksymalnej dostępnej przestrzeni.\r\n  - Wzór wykorzystania: 'pused = 100 - 100 * (available / total - free + available)'\r\n- Wykres wykorzystania systemu plików, utworzony na podstawie prototypów wykresów, przedstawia zarezerwowane miejsce systemu plików jako różnicę między używanym a dostępnym miejscem w całym woluminie.\r\n\r\nMożesz omówić ten szablon lub przesłać opinię na naszym forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387225-discussion-thread-for-official-zabbix-template-for-linux\r\n\r\nWygenerowano za pomocą oficjalnego narzędzia Zabbix do tworzenia szablonów „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": "## Przegląd\r\n\r\nTo jest oficjalny szablon systemu Linux. Wymaga agenta Zabbix w wersji 8.0 lub nowszej.\r\n\r\n#### Uwagi dotyczące wykrywania systemów plików (FS):\r\n- System plików ext4/3/2 rezerwuje miejsce do użytku uprzywilejowanego, zazwyczaj domyślnie ustawione na 5%.\r\n- BTRFS domyślnie przydziela 10% woluminu na własne potrzeby.\r\n- Aby ograniczyć ryzyko potencjalnych awarii, wyzwalacze dotyczące użycia systemu plików są oparte na maksymalnej dostępnej przestrzeni.\r\n  - Wzór wykorzystania: `pused = 100 - 100 * (available / total - free + available)`\r\n- Wykres wykorzystania systemu plików, utworzony na podstawie prototypów wykresów, przedstawia zarezerwowane miejsce systemu plików jako różnicę między używanym a dostępnym miejscem w całym woluminie."
        },
        {
            "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": "To jest oficjalny szablon systemu Windows. Wymaga agenta Zabbix w wersji 8.0 lub nowszej.\r\n\r\nMożesz omówić ten szablon lub przesłać opinię na naszym forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows\r\n\r\nWygenerowano za pomocą oficjalnego narzędzia Zabbix do tworzenia szablonów „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": "## Przegląd\r\n\r\nTo jest oficjalny szablon systemu Windows. Wymaga agenta Zabbix w wersji 8.0 lub nowszej."
        }
    ],
    "id": 1
}

Pobieranie grup szablonów

Pobierz grupy szablonów, do których należy szablon „Linux by Zabbix agent”.

Żądanie:

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

Odpowiedź:

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

Pobieranie hostów według szablonu

Pobierz hosty, które mają podłączony szablon „10001” (Linux by Zabbix agent).

Żądanie:

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

Odpowiedź:

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

Wyszukiwanie według tagów szablonu

Pobierz szablony, które mają tag „host-name” równy „{HOST.NAME}”.

Żądanie:

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

Odpowiedź:

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

Zobacz także

Źródło

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