template.get

Описание

integer/array template.get(object parameters)

Этот метод позволяет получать шаблоны в соответствии с заданными параметрами.

Этот метод доступен пользователям любого типа. Права на вызов этого метода могут быть отозваны в настройках роли пользователя. См. Роли пользователей для получения дополнительной информации.

Параметры

(object) Параметры, определяющие желаемый вывод.

Метод поддерживает следующие параметры.

Параметр Тип Описание
templateids ID/array Возвращать только шаблоны с указанными ID шаблонов.
groupids ID/array Возвращать только шаблоны, принадлежащие указанным группам шаблонов.
parentTemplateids ID/array Возвращать только шаблоны, с которыми связан указанный шаблон.
hostids ID/array Возвращать только шаблоны, связанные с указанными узлами сети/шаблонами.
graphids ID/array Возвращать только шаблоны, содержащие указанные графики.
itemids ID/array Возвращать только шаблоны, содержащие указанные элементы данных.
triggerids ID/array Возвращать только шаблоны, содержащие указанные триггеры.
with_items flag Возвращать только шаблоны, у которых есть элементы данных.
with_triggers flag Возвращать только шаблоны, у которых есть триггеры.
with_graphs flag Возвращать только шаблоны, у которых есть графики.
with_httptests flag Возвращать только шаблоны, у которых есть веб-сценарии.
evaltype integer Метод вычисления тегов.

Возможные значения:
0 - (по умолчанию) И/Или;
2 - Или.
tags object/array Возвращать только шаблоны с указанными тегами.
Формат: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Пустой массив возвращает все шаблоны.

Возможные значения operator:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
inheritedTags boolean Возвращать шаблоны, у которых указанные tags также присутствуют в связанных шаблонах.

Возможные значения:
true - связанные шаблоны также должны иметь указанные теги;
false - (по умолчанию) теги из связанных шаблонов игнорируются.
selectInheritedTags query Возвращать свойство inheritedTags с тегами, находящимися в связанных шаблонах.
selectTags query Возвращать теги шаблона в свойстве tags.
selectDiscoveryRules query Возвращать свойство discoveryRules с правилами LLD шаблона.

Поддерживает count.
selectHosts query Возвращать узлы сети, связанные с шаблоном, в свойстве hosts.

Поддерживает count.
selectTemplateGroups query Возвращать группы шаблонов, к которым принадлежит шаблон, в свойстве templategroups.
selectTemplates query Возвращать шаблоны, с которыми связан указанный шаблон, в свойстве templates.

Поддерживает count.
selectParentTemplates query Возвращать шаблоны, связанные с указанным шаблоном, в свойстве parentTemplates.

Поддерживает count.
selectHttpTests query Возвращать веб-сценарии из шаблона в свойстве httpTests.

Поддерживает count.
selectItems query Возвращать элементы данных из шаблона в свойстве items.

Поддерживает count.
selectTriggers query Возвращать триггеры из шаблона в свойстве triggers.

Поддерживает count.
selectGraphs query Возвращать графики из шаблона в свойстве graphs.

Поддерживает count.
selectMacros query Возвращать макросы из шаблона в свойстве macros.
selectDashboards query Возвращать панели из шаблона в свойстве dashboards.

Поддерживает count.
selectValueMaps query Возвращать свойство valuemaps с картами значений шаблона.
limitSelects integer Ограничивает количество записей, возвращаемых подзапросами.

Применяется к следующим подзапросам:
selectTemplates - результаты будут отсортированы по name;
selectHosts - отсортированы по host;
selectParentTemplates - отсортированы по host;
selectItems - отсортированы по name;
selectDiscoveryRules - отсортированы по name;
selectTriggers - отсортированы по description;
selectGraphs - отсортированы по name;
selectDashboards - отсортированы по name.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: hostid, host, name, status.
countOutput boolean Эти параметры описаны в справочном комментарии.
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 Возвращать low-level discovery из шаблона в свойстве discoveries.

Поддерживает count.

Этот запрос устарел, используйте вместо него selectDiscoveryRules.

Возвращаемые значения

(integer/array) Возвращает одно из следующего:

  • массив объектов;
  • количество полученных объектов, если был использован параметр countOutput.

Примеры

Получение шаблонов по имени

Получите все данные о двух шаблонах с именами "Linux by Zabbix agent" и "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
}

Ответ:

{
    "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": "Это официальный шаблон Linux. Для него требуется Zabbix агент версии 8.0 или новее.\r\n\r\nПримечания по обнаружению файловых систем (FS):\r\n- Файловая система ext4/3/2 резервирует пространство для привилегированного использования, обычно по умолчанию это 5%.\r\n- BTRFS по умолчанию выделяет 10% тома для собственных нужд.\r\n- Чтобы снизить риск возможных сбоев, триггеры использования FS основаны на максимальном доступном пространстве.\r\n  - Формула использования: 'pused = 100 - 100 * (available / total - free + available)'\r\n- Диаграмма использования FS, полученная из прототипов графиков, отражает зарезервированное пространство FS как разницу между используемым и доступным пространством от общего объема.\r\n\r\nВы можете обсудить этот шаблон или оставить отзыв на нашем форуме https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387225-discussion-thread-for-official-zabbix-template-for-linux\r\n\r\nСгенерировано официальным инструментом шаблонов 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": "## Обзор\r\n\r\nЭто официальный шаблон Linux. Для него требуется Zabbix агент версии 8.0 или новее.\r\n\r\n#### Примечания по обнаружению файловых систем (FS):\r\n- Файловая система ext4/3/2 резервирует пространство для привилегированного использования, обычно по умолчанию это 5%.\r\n- BTRFS по умолчанию выделяет 10% тома для собственных нужд.\r\n- Чтобы снизить риск возможных сбоев, триггеры использования FS основаны на максимальном доступном пространстве.\r\n  - Формула использования: `pused = 100 - 100 * (available / total - free + available)`\r\n- Диаграмма использования FS, полученная из прототипов графиков, отражает зарезервированное пространство FS как разницу между используемым и доступным пространством от общего объема."
        },
        {
            "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": "Это официальный шаблон Windows. Для него требуется Zabbix агент версии 8.0 или новее.\r\n\r\nВы можете обсудить этот шаблон или оставить отзыв на нашем форуме https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/387224-discussion-thread-for-official-zabbix-template-for-windows\r\n\r\nСгенерировано официальным инструментом шаблонов 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": "## Обзор\r\n\r\nЭто официальный шаблон Windows. Для него требуется Zabbix агент версии 8.0 или новее."
        }
    ],
    "id": 1
}

Получение групп шаблонов

Получите группы шаблонов, в которые входит шаблон "Linux by Zabbix агент".

Запрос:

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

Ответ:

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

Получение узлов сети по шаблону

Получите узлы сети, к которым привязан шаблон "10001" (Linux by Zabbix агент).

Запрос:

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

Ответ:

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

Поиск по тегам шаблона

Получить шаблоны, у которых тег "host-name" равен "{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
}

Ответ:

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

См. также

Источник

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