template.get

Описание

integer/array template.get(параметры объекта)

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

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

Параметры

(object) Параметры, определяющие требуемый результат.

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

Parameter Type Description
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>"}, ...].
Пустой массив возвращает все шаблоны.

Возможные значения оператора:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не содержит;
3 - Не равно;
4 - Существует;
5 - Не существует.
selectTags query Возвращать теги шаблона в свойстве tags.
selectHosts query Возвращать узлы сети, связанные с шаблоном, в свойстве hosts.

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

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

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

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

Поддерживает count.
selectDiscoveries query Возвращать обнаружения низкого уровня из шаблона в свойстве discoveries.

Поддерживает 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;
selectDiscoveries - по 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
selectGroups
(deprecated)
query Этот параметр устарел, вместо него используйте selectTemplateGroups.
Возвращать группы шаблонов, к которым принадлежит шаблон, в свойстве groups.

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

(целое число/массив) Возвращает либо:

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

Примеры

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

Получение всех данных о двух шаблонах с именами "Linux" и "Windows".

Запрос:

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

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "proxyid": "0",
            "host": "Linux",
            "status": "3",
            "disable_until": "0",
            "error": "",
            "available": "0",
            "errors_from": "0",
            "lastaccess": "0",
            "ipmi_authtype": "0",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "ipmi_disable_until": "0",
            "ipmi_available": "0",
            "snmp_disable_until": "0",
            "snmp_available": "0",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "ipmi_errors_from": "0",
            "snmp_errors_from": "0",
            "ipmi_error": "",
            "snmp_error": "",
            "jmx_disable_until": "0",
            "jmx_available": "0",
            "jmx_errors_from": "0",
            "jmx_error": "",
            "name": "Linux",
            "flags": "0",
            "templateid": "10001",
            "description": "",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "tls_psk_identity": "",
            "tls_psk": "",
            "uuid": "282ffe33afc74cccaf1524d9aa9dc502"
        },
        {
            "proxyid": "0",
            "host": "Windows",
            "status": "3",
            "disable_until": "0",
            "error": "",
            "available": "0",
            "errors_from": "0",
            "lastaccess": "0",
            "ipmi_authtype": "0",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "ipmi_disable_until": "0",
            "ipmi_available": "0",
            "snmp_disable_until": "0",
            "snmp_available": "0",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "ipmi_errors_from": "0",
            "snmp_errors_from": "0",
            "ipmi_error": "",
            "snmp_error": "",
            "jmx_disable_until": "0",
            "jmx_available": "0",
            "jmx_errors_from": "0",
            "jmx_error": "",
            "name": "Windows",
            "flags": "0",
            "templateid": "10081",
            "description": "",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "tls_psk_identity": "",
            "tls_psk": "",
            "uuid": "522d17e1834049be879287b7c0518e5d"
        }
    ],
    "id": 1
}

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

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

Запрос:

{
    "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 agent).

Запрос:

{
    "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": [
        {
            "hostid": "10402",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "{HOST.NAME}"
                }
            ]
        }
    ],
    "id": 1
}

См. также

Источник

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