triggerprototype.get

Описание

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

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

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

Параметры

(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.
selectItems query Возвращать элементы данных и прототипы элементов данных, используемые прототипом триггера, в свойстве items.
selectTags query Возвращать теги прототипа триггера в свойстве tags.
selectTemplateGroups query Возвращать группы шаблонов, к которым принадлежит прототип триггера, в свойстве templategroups.
filter object Возвращать только те результаты, которые точно соответствуют указанному фильтру.

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

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

Поддерживает дополнительные свойства:
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",
                    "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",
                    "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": "Free disk space is less than 20% on volume {#FSNAME}",
            "tags": [
                {
                    "tag": "volume",
                    "value": "{#FSNAME}"
                },
                {
                    "tag": "type",
                    "value": "{#FSTYPE}"
                }
            ]
        }
    ],
    "id": 1
}

См. также

Источник

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