integer/array trigger.get(object parameters) 该方法允许根据给定的参数检索触发器。
此方法可供任何类型的用户使用。可以在用户角色设置中撤销调用该方法的权限。 更多信息请参见 User roles。
(object) 定义期望输出的参数。
该方法支持以下参数。
| 参数 | 数据类型 | 描述 |
|---|---|---|
| triggerids | ID/array | 仅返回具有指定ID的触发器。 |
| groupids | ID/array | 仅返回属于给定主机组或模板组的主机或模板的触发器。 |
| templateids | ID/array | 仅返回属于给定模板的触发器。 |
| hostids | ID/array | 仅返回属于给定主机的触发器。 |
| itemids | ID/array | 仅返回包含给定监控项的触发器。 |
| functions | string/array | 仅返回使用给定函数的触发器。 有关支持函数的列表,请参阅supported function页面。 |
| 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 | 标签搜索规则。 可能的值: 0 - (默认)与/或; 2 - 或。 |
| tags | array | 仅返回具有给定标签的触发器。根据操作符值,对标签进行精确匹配或对标签值进行大小写敏感或不敏感的搜索。 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...]。空array返回所有触发器。 可能的操作符类型: 0 - (默认)类似; 1 - 等于; 2 - 不类似; 3 - 不等于; 4 - 存在; 5 - 不存在。 |
| expandComment | flag | 在触发器描述中展开宏。 |
| expandDescription | flag | 在触发器名称中展开宏。 |
| expandExpression | flag | 在触发器表达式中展开函数和宏。 |
| selectHostGroups | query | 在hostgroups属性中返回触发器所属的主机组。 |
| selectHosts | query | 在hosts属性中返回触发器所属的主机。 |
| selectItems | query | 在items属性中返回触发器包含的监控项。 |
| selectFunctions | query | 在functions属性中返回触发器使用的函数。函数objects表示触发器表达式中使用的函数,并具有以下属性: functionid - (ID) 函数的ID;itemid - (ID) 函数中使用的监控项的ID;function - (string) 函数的名称;parameter - (string) 传递给函数的参数。query参数在返回的string中被替换为$符号。 |
| selectDependencies | query | 在dependencies属性中返回触发器依赖的触发器。 |
| selectDiscoveryRule | query | 在discoveryRule属性中返回创建触发器的发现规则。 |
| selectLastEvent | query | 在lastEvent属性中返回最后一个重要的触发器事件。 |
| selectTags | query | 在tags属性中返回触发器标签。 |
| selectTemplateGroups | query | 在templategroups属性中返回触发器所属的模板组。 |
| selectTriggerDiscovery | query | 在triggerDiscovery属性中返回触发器发现object。触发器发现objects将触发器链接到创建它的触发器原型。它具有以下属性: parent_triggerid - (ID) 创建触发器的触发器原型的ID;status - (int) 触发器发现状态:0 - (默认) 触发器已发现, 1 - 触发器不再被发现; ts_delete - (timestamp) 不再被发现的触发器将被删除的时间;ts_disable - (timestamp) 不再被发现的触发器将被禁用的时间;disable_source - (int) 指示触发器是由LLD规则还是手动禁用的:0 - (默认) 自动禁用, 1 - 由LLD规则禁用。 |
| filter | object | 仅返回与给定过滤器完全匹配的结果。 接受一个object,其中键是属性名称,值是要匹配的单个值或array。 不支持 text 数据类型的属性。支持附加属性: host - 触发器所属的主机的技术名称;hostid - 触发器所属的主机的ID。 |
| limitSelects | integer | 限制子查询返回的记录数。 适用于以下子查询: selectHosts - 结果将按host排序。 |
| sortfield | string/array | 按给定属性通用get方法参数结果。 可能的值: triggerid,description,status,priority,lastchange,hostname。 |
| countOutput | boolean | 这些参数在通用get方法参数中描述。 |
| editable | boolean | |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| preservekeys | boolean | |
| search | object | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean | |
| selectGroups (deprecated) | query | 此参数已弃用,请改用selectHostGroups或selectTemplateGroups。在 groups属性中返回触发器所属的主机组和模板组。 |
(integer/array) 返回以下之一:
countOutput 参数,则为检索到的 objects 的数量。检索触发器"14062"中使用的所有数据及其函数。
执行请求:
{ "jsonrpc": "2.0", "method": "trigger.get", "params": { "triggerids": "14062", "output": "extend", "selectFunctions": "extend" }, "id": 1 }响应:
{ "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 }检索所有处于问题状态触发器的ID、名称和严重性,并按严重性降序排序。
执行请求:
{ "jsonrpc": "2.0", "method": "trigger.get", "params": { "output": [ "triggerid", "description", "priority" ], "filter": { "value": 1 }, "sortfield": "priority", "sortorder": "DESC" }, "id": 1 }响应:
{ "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 }检索具有标签的特定触发器。
执行请求:
{ "jsonrpc": "2.0", "method": "trigger.get", "params": { "output": [ "triggerid", "description" ], "selectTags": "extend", "triggerids": [ "17578" ] }, "id": 1 }响应:
{ "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 }ui/include/classes/api/services/CTrigger.php 中的 CTrigger::get()。