[comment]: # translation:outdated

[comment]: # ({fc5b81d2-fc5b81d2})
# trigger.get

[comment]: # ({/fc5b81d2-fc5b81d2})

[comment]: # ({f493658b-e77e3d1e})
### 描述

```
integer/array trigger.get(object parameters)
```

该方法允许根据给定的参数检索触发器。

::: noteclassic
此方法可供任何类型的用户使用。可以在用户角色设置中撤销调用该方法的权限。
更多信息请参见 [User roles](/manual/web_interface/frontend_sections/users/user_roles)。
:::

[comment]: # ({/f493658b-e77e3d1e})

[comment]: # ({0b82f3a8-44938a82})
### 参数

`(object)` 定义期望输出的参数.

该方法支持以下参数.

| 参数 | [数据类型](/manual/api/reference_commentary#数据类型) | 描述 |
|--|--|------|
| triggerids | ID/array | 仅返回具有指定ID的触发器. |
| groupids | ID/array | 仅返回属于给定主机组或模板组中的主机或模板的触发器. |
| templateids | ID/array | 仅返回属于指定模板的触发器. |
| hostids | ID/array | 仅返回属于指定主机的触发器. |
| itemids | ID/array | 仅返回包含指定监控项的触发器. |
| functions | string/array | 仅返回使用指定函数的触发器.<br><br>参考[supported function](/manual/appendix/functions)页面获取支持函数列表. |
| group | string | 仅返回属于具有指定名称的主机组或模板组中的主机或模板的触发器. |
| host | string | 仅返回属于具有指定技术名称的主机的触发器. |
| inherited | boolean | 如果设置为`true`则仅返回从模板继承的触发器. |
| templated | boolean | 如果设置为`true`则仅返回属于模板的触发器. |
| dependent | boolean | 如果设置为`true`则仅返回具有依赖项的触发器. 如果设置为`false`则仅返回没有依赖项的触发器. |
| monitored | flag | 仅返回属于受监控主机且仅包含启用监控项的启用触发器. |
| active | flag | 仅返回属于受监控主机的启用触发器. |
| maintenance | boolean | 如果设置为`true`则仅返回属于处于维护状态主机的启用触发器. |
| withUnacknowledgedEvents | flag | 仅返回具有未确认事件的触发器. |
| withAcknowledgedEvents | flag | 仅返回所有事件已确认的触发器. |
| withLastEventUnacknowledged | flag | 仅返回最后事件未确认的触发器. |
| skipDependent | flag | 跳过处于问题状态且依赖于其他触发器的触发器. 注意如果其他触发器被禁用、具有禁用监控项或禁用监控项 主机则会被忽略. |
| lastChangeSince | timestamp | 仅返回在指定时间后状态发生变化的触发器. |
| lastChangeTill | timestamp | 仅返回在指定时间前状态发生变化的触发器. |
| only\_true | flag | 仅返回最近处于问题状态的触发器. |
| min\_severity | integer | 仅返回严重性大于或等于指定严重性的触发器. |
| evaltype | integer | 标签[evaluation method](/manual/web_interface/frontend_sections/data_collection/hosts/triggers#using-filter).<br><br>可能值:<br>0 - *(默认)* 与/或;<br>2 - 或. |
| tags | array | 仅返回具有指定标签的触发器.<br>格式: `[{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]`.<br>空array返回所有触发器.<br><br>可能[operator](/manual/web_interface/frontend_sections/data_collection/hosts/triggers#using-filter)值:<br>0 - *(默认)* 包含;<br>1 - 等于;<br>2 - 不包含;<br>3 - 不等于;<br>4 - 存在;<br>5 - 不存在. |
| expandComment | flag | 在触发器描述中展开宏. |
| expandDescription | flag | 在触发器名称中展开宏. |
| expandExpression | flag | 在触发器表达式中展开函数和宏. |
| selectHostGroups | query | 在[`hostgroups`](/manual/api/reference/hostgroup/object)属性中返回触发器所属的主机组. |
| selectHosts | query | 在[`hosts`](/manual/api/reference/host/object)属性中返回触发器所属的主机. |
| selectItems | query | 在[`items`](/manual/api/reference/item/object)属性中返回触发器包含的监控项. |
| selectFunctions | query | 在`functions`属性中返回触发器使用的函数.<br><br>函数objects表示触发器表达式中使用的函数并具有以下属性:<br>`functionid` - `(ID)` 函数ID;<br>`itemid` - `(ID)` 函数中使用的监控项ID;<br>`function` - `(string)` 函数名称;<br>`parameter` - `(string)` 传递给函数的参数. query参数在返回的string中被`$`符号替换. |
| selectDependencies | query | 在`dependencies`属性中返回触发器依赖的触发器. |
| selectDiscoveryRule | query | 在`discoveryRule`属性中返回创建触发器的[发现规则](/manual/api/reference/discoveryrule/object#发现规则). |
| selectLastEvent | query | 在[`lastEvent`](/manual/api/reference/event/object)属性中返回最后一个重要触发器事件. |
| selectTags | query | 在[`tags`](/manual/api/reference/trigger/object#Trigger_tag)属性中返回触发器标签. |
| selectTemplateGroups | query | 在[`templategroups`](/manual/api/reference/templategroup/object)属性中返回触发器所属的模板组. |
| selectTriggerDiscovery | query | 在`triggerDiscovery`属性中返回触发器发现object. 触发器发现objects将触发器链接到创建它的触发器原型.<br><br>具有以下属性:<br>`parent_triggerid` - `(ID)` 创建触发器的触发器原型ID;<br>`status` - `(int)` 触发器发现状态:<br>0 - *(默认)* 触发器已发现,<br>1 - 触发器不再被发现;<br>`ts_delete` - `(timestamp)` 不再被发现的触发器将被删除的时间;<br>`ts_disable` - `(timestamp)` 不再被发现的触发器将被禁用的时间;<br>`disable_source` - `(int)` 指示触发器是由LLD规则还是手动禁用:<br>0 - *(默认)* 自动禁用,<br>1 - 由LLD规则禁用. |
| filter | object | 仅返回完全匹配给定过滤器的结果.<br><br>接受一个object, 其中键是属性名, 值是要匹配的单个值或array值.<br><br>不支持`text` [数据类型](/manual/api/reference_commentary#数据类型)属性.<br><br>支持附加属性:<br>`host` - 触发器所属主机的技术名称;<br>`hostid` - 触发器所属主机的ID. |
| limitSelects | integer | 限制子查询返回的记录数.<br><br>适用于以下子查询:<br>`selectHosts` - 结果将按`host`排序. |
| sortfield | string/array | [通用get方法参数](/manual/api/reference_commentary#通用get方法参数)按给定属性排序结果.<br><br>可能值: `triggerid`, `description`, `status`, `priority`, `lastchange`, `hostname`. |
| countOutput | boolean | 这些参数在[通用get方法参数](/manual/api/reference_commentary#通用get方法参数)中描述. |
| editable | boolean | ^           |
| excludeSearch | boolean | ^           |
| limit | integer | ^           |
| output | query | ^           |
| preservekeys | boolean | ^           |
| search | object | ^           |
| searchByAny | boolean | ^           |
| searchWildcardsEnabled | boolean | ^           |
| sortorder | string/array | ^           |
| startSearch | boolean | ^           |
| selectGroups<br>(deprecated) | query | 此参数已弃用, 请改用`selectHostGroups`或`selectTemplateGroups`.<br>在`groups`属性中返回触发器所属的主机组和模板组. |

[comment]: # ({/0b82f3a8-44938a82})

[comment]: # ({07ca11ca-7223bab1})
### 返回值

`(integer/array)` 返回以下之一：

-   objects 的 array；
-   如果使用了 `countOutput` 参数，则为检索到的 objects 的数量。

[comment]: # ({/07ca11ca-7223bab1})

[comment]: # ({b41637d2-b41637d2})
### 示例

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({d9d4c665-3d27e76d})
#### 通过触发器ID检索数据

检索触发器"14062"中使用的所有数据及其函数。

[执行请求](/manual/api#执行请求):


```json
{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "triggerids": "14062",
        "output": "extend",
        "selectFunctions": "extend"
    },
    "id": 1
}
```
响应:


```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "14062",
            "expression": "{13513}<10m",
            "description": "{HOST.NAME} has been restarted (uptime < 10m)",
            "url": "",
            "status": "0",
            "value": "0",
            "priority": "2",
            "lastchange": "0",
            "comments": "The host uptime is less than 10 minutes",
            "error": "",
            "templateid": "10016",
            "type": "0",
            "state": "0",
            "flags": "0",
            "recovery_mode": "0",
            "recovery_expression": "",
            "correlation_mode": "0",
            "correlation_tag": "",
            "manual_close": "0",
            "opdata": "",
            "event_name": "",
            "uuid": "",
            "url_name": "",
            "functions": [
                {
                    "functionid": "13513",
                    "itemid": "24350",
                    "parameter": "$",
                    "function": "last"
                }
            ]
        }
    ],
    "id": 1
}
```

[comment]: # ({/d9d4c665-3d27e76d})

[comment]: # ({a6701c25-8a31301f})
#### 获取处于问题状态的触发器

检索所有处于问题状态触发器的ID、名称和严重性，并按严重性降序排序。

[执行请求](/manual/api#执行请求):


```json
{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description",
            "priority"
        ],
        "filter": {
            "value": 1
        },
        "sortfield": "priority",
        "sortorder": "DESC"
    },
    "id": 1
}
```
响应：


```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "13907",
            "description": "Zabbix self-monitoring processes < 100% busy",
            "priority": "4"
        },
        {
            "triggerid": "13824",
            "description": "Zabbix discoverer processes more than 75% busy",
            "priority": "3"
        }
    ],
    "id": 1
}
```

[comment]: # ({/a6701c25-8a31301f})

[comment]: # ({d9fc89e0-8005126d})
#### 获取带有标签的特定触发器

检索具有标签的特定触发器。

[执行请求](/manual/api#执行请求):


```json
{
    "jsonrpc": "2.0",
    "method": "trigger.get",
    "params": {
        "output": [
            "triggerid",
            "description"
        ],
        "selectTags": "extend",
        "triggerids": [
            "17578"
        ]
    },
    "id": 1
}
```
响应：


```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "triggerid": "17370",
            "description": "Service status",
            "tags": [
                {
                    "tag": "service",
                    "value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}"
                },
                {
                    "tag": "error",
                    "value": ""
                }
            ]
        }
    ],
    "id": 1
}
```

[comment]: # ({/d9fc89e0-8005126d})

[comment]: # ({11e314dd-222d46a0})
### 另请参阅

-   [发现规则](/manual/api/reference/discoveryrule/object#发现规则)
-   [监控项](/manual/api/reference/item/object#监控项)
-   [主机](/manual/api/reference/host/object#主机)
-   [主机组](/manual/api/reference/hostgroup/object#主机组)
-   [模板组](/manual/api/reference/templategroup/object#模板组)

[comment]: # ({/11e314dd-222d46a0})

[comment]: # ({07515392-07515392})
### 来源

*ui/include/classes/api/services/CTrigger.php* 中的 CTrigger::get()。

[comment]: # ({/07515392-07515392})
