triggerprototype.get

Описание

integer/array triggerprototype.get(object parameters)

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

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

Параметры

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

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

Parameter Type Description
active flag Возвращать только включенные прототипы триггеров, которые принадлежат мониторируемым узлам сети.
discoveryids ID/array Возвращать только прототипы триггеров, которые принадлежат указанным правилам LLD.
functions string/array Возвращать только триггеры, которые используют указанные функции.

См. страницу Поддерживаемые функции для списка поддерживаемых функций.
group string Возвращать только прототипы триггеров, которые принадлежат узлам сети или шаблонам из указанных групп узлов сети или групп шаблонов.
groupids ID/array Возвращать только прототипы триггеров, которые принадлежат узлам сети или шаблонам из указанных групп узлов сети или групп шаблонов.
host string Возвращать только прототипы триггеров, которые принадлежат узлам сети с указанным именем.
hostids ID/array Возвращать только прототипы триггеров, которые принадлежат указанным узлам сети.
inherited boolean Если установлено значение true, возвращать только прототипы триггеров, унаследованные от шаблона.
maintenance boolean Если установлено значение true, возвращать только включенные прототипы триггеров, которые принадлежат узлам сети в обслуживании.
min_severity integer Возвращать только прототипы триггеров с уровнем серьезности не ниже указанного.
monitored flag Возвращать только включенные прототипы триггеров, которые принадлежат мониторируемым узлам сети и содержат только включенные элементы данных.
templated boolean Если установлено значение true, возвращать только прототипы триггеров, которые принадлежат шаблонам.
templateids ID/array Возвращать только прототипы триггеров, которые принадлежат указанным шаблонам.
triggerids ID/array Возвращать только прототипы триггеров с указанными ID.
expandExpression flag Разворачивать функции и макросы в выражении триггера.
selectDependencies query Возвращать прототипы триггеров и триггеры, от которых зависит прототип триггера, в свойстве dependencies.
selectDiscoveryData query Возвращать свойство discoveryData с данными объекта обнаружения прототипа триггера. Объект обнаружения прототипа триггера связывает обнаруженный прототип триггера с прототипом триггера, из которого он был обнаружен.

Он имеет следующие свойства:
parent_triggerid - (ID) ID прототипа триггера, из которого был создан прототип триггера;
status - (int) статус обнаружения прототипа триггера:
0 - (по умолчанию) прототип триггера обнаружен,
1 - прототип триггера больше не обнаружен;
ts_delete - (timestamp) время, когда прототип триггера, который больше не обнаружен, будет удален;
ts_disable - (timestamp) время, когда прототип триггера, который больше не обнаружен, будет отключен;
disable_source - (int) признак того, был ли прототип триггера отключен правилом LLD или вручную:
0 - (по умолчанию) отключен автоматически,
1 - отключен правилом LLD.
selectDiscoveryRule query Возвращать правило LLD, к которому принадлежит прототип триггера, в свойстве discoveryRule.
selectDiscoveryRulePrototype query Возвращать свойство discoveryRulePrototype с родительским прототипом правила LLD, к которому принадлежит прототип триггера.
selectFunctions query Возвращать функции, используемые в прототипе триггера, в свойстве functions.

Объекты функции представляют функции, используемые в выражении триггера, и имеют следующие свойства:
functionid - (ID) ID функции;
itemid - (ID) ID элемента данных, используемого в функции;
function - (string) имя функции;
parameter - (string) параметр, переданный функции. Параметр запроса заменяется символом $ в возвращаемой строке.
selectHostGroups query Возвращать группы узлов сети, к которым принадлежит прототип триггера, в свойстве hostgroups.
selectHosts query Возвращать узлы сети, к которым принадлежит прототип триггера, в свойстве hosts.
selectInheritedTags query Возвращать свойство inheritedTags с тегами, унаследованными от шаблонов, связанных шаблонов и узлов сети, а также от прототипов элементов данных, на которые ссылаются выражения триггера или восстановления.
selectItems query Возвращать элементы данных и прототипы элементов данных, используемые прототипом триггера, в свойстве items.
selectTags query Возвращать теги прототипа триггера в свойстве tags.
selectTemplateGroups query Возвращать группы шаблонов, к которым принадлежит прототип триггера, в свойстве templategroups.
filter object Возвращать только те результаты, которые точно соответствуют указанному фильтру.

Принимает объект, где ключи — это имена свойств, а значения — либо одно значение, либо массив значений для сопоставления.

Не поддерживает свойства с типом данных text.

Поддерживает дополнительные свойства:
host - техническое имя узла сети, к которому принадлежит прототип триггера;
hostid - ID узла сети, к которому принадлежит прототип триггера.
limitSelects integer Ограничивает число записей, возвращаемых подвыборами.

Применяется к следующим подвыборам:
selectHosts - результаты будут отсортированы по host.
sortfield string/array Сортировать результат по указанным свойствам.

Возможные значения: triggerid, description, status, priority, discovered.
countOutput boolean Эти параметры описаны в справочном комментарии.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

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

(integer/array) Возвращает либо:

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

Примеры

Получение прототипов триггеров из правила LLD

Получите все прототипы триггеров и их функции из правила LLD.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "triggerprototype.get",
    "params": {
        "output": "extend",
        "selectFunctions": "extend",
        "discoveryids": "22450"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "13272",
            "expression": "{12598}<20",
            "description": "Free inodes is less than 20% on volume {#FSNAME}",
            "url": "",
            "status": "0",
            "value": "0",
            "priority": "2",
            "lastchange": "0",
            "comments": "",
            "error": "",
            "templateid": "0",
            "type": "0",
            "state": "0",
            "flags": "2",
            "recovery_mode": "0",
            "recovery_expression": "",
            "correlation_mode": "0",
            "correlation_tag": "",
            "manual_close": "0",
            "opdata": "",
            "discover": "0",
            "event_name": "",
            "uuid": "6ce467d05e8745409a177799bed34bb3",
            "url_name": "",
            "functions": [
                {
                    "functionid": "12598",
                    "itemid": "22454",
                    "triggerid": "13272",
                    "parameter": "$",
                    "function": "last"
                }
            ]
        },
        {
            "triggerid": "13266",
            "expression": "{13500}<20",
            "description": "Free disk space is less than 20% on volume {#FSNAME}",
            "url": "",
            "status": "0",
            "value": "0",
            "priority": "2",
            "lastchange": "0",
            "comments": "",
            "error": "",
            "templateid": "0",
            "type": "0",
            "state": "0",
            "flags": "2",
            "recovery_mode": "0",
            "recovery_expression": "",
            "correlation_mode": "0",
            "correlation_tag": "",
            "manual_close": "0",
            "opdata": "",
            "discover": "0",
            "event_name": "",
            "uuid": "74a1fc62bfe24b7eabe4e244c70dc384",
            "url_name": "",
            "functions": [
                {
                    "functionid": "13500",
                    "itemid": "22686",
                    "triggerid": "13266",
                    "parameter": "$",
                    "function": "last"
                }
            ]
        }
    ],
    "id": 1
}

Получение конкретного прототипа триггера с тегами

Запрос:

{
    "jsonrpc": "2.0",
    "method": "triggerprototype.get",
    "params": {
        "output": [
            "triggerid",
            "description"
        ],
        "selectTags": "extend",
        "triggerids": [
            "17373"
        ]
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "17373",
            "description": "Свободное место на диске меньше 20% на томе {#FSNAME}",
            "tags": [
                {
                    "tag": "volume",
                    "value": "{#FSNAME}"
                },
                {
                    "tag": "type",
                    "value": "{#FSTYPE}"
                }
            ]
        }
    ],
    "id": 1
}

См. также

Источник

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