integer/array trigger.get(object parameters)
此方法允许根据指定的参数检索触发器.
此方法适用于任何类型的用户,可以在用户角色设置中撤销调用该方法的权限,前往 用户角色 查看更多详细信息.
(object)
定义需要输出的参数.
该方法支持以下参数.
参数 | 类型 | 描述 |
---|---|---|
triggerids | string/array | 仅返回属于指定ID的触发器. |
groupids | string/array | 仅返回属于指定主机组ID的触发器. |
templateids | string/array | 仅返回属于指定模板ID的触发器. |
hostids | string/array | 仅返回属于指定主机ID的触发器. |
itemids | string/array | 仅返回包含指定监控项ID的触发器. |
functions | string/array | 仅返回使用指定函数的触发器. 请参阅支持的函数 页面查看有关支持的功能列表. |
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 - (默认) And/Or; 2 - Or. |
tags | array of objects | 只返回给定标签的触发器。按标签精确匹配,根据运算符值按标签值进行区分大小写或不区分大小写的搜索. 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...] .空数组返回所有触发器. 可能的运算符类型: 0 - (默认) Like; 1 - Equal; 2 - Not like; 3 - Not equal 4 - Exists; 5 - Not exists. |
expandComment | flag | 在触发器描述中展开宏. |
expandDescription | flag | 以触发器的名称展开宏. |
expandExpression | flag | 在触发器表达式中展开函数和宏. |
selectGroups | query | 在组 属性中返回触发器所属的主机组. |
selectHosts | query | 返回触发器所属的 主机. |
selectItems | query | 返回触发器包含的 监控项. |
selectFunctions | query | 在 functions 属性中返回触发器中使用的函数.函数对象表示触发器表达式中使用的函数,并具有以下属性: functionid - (string) 函数的ID;itemid - (string) 函数中使用的监控项 ID;function - (string) 函数的名称;parameter - (string) 传递给函数的参数。查询参数被返回字符串中的$ 符号替换. |
selectDependencies | query | 返回在dependencies 属性中依赖触发的触发器. |
selectDiscoveryRule | query | 返回创建触发器的 低级别自动发现规则. |
selectLastEvent | query | 在 最新事件 属性中返回最后一个重要的触发事件. |
selectTags | query | 在标签 属性中返回触发标签. |
selectTriggerDiscovery | query | 在 triggerDiscovery 属性中返回触发器发现对象. 触发器发现对象将触发器链接到创建它的触发器原型.它具有以下属性: parent_triggerid - (string) 创建触发器的触发器原型的 ID. |
filter | object | 只返回与给定过滤器完全匹配的结果. 接受一个数组,其中键为属性名称,值为单个值或要匹配值的数组. 支持额外的过滤器: host - 触发器所属主机的正式名称;hostid - 触发器所属主机的ID. |
limitSelects | integer | 限制子查询返回的记录数量. 适用于以下子查询: selectHosts - 结果将按host 排序. |
sortfield | string/array | 按指定属性对结果进行排序 . 有效的值为: 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 |
(integer/array)
返回两者其中任一:
countOutput
参数,则检索对象的计数.检索触发器“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} 已重启 (正常运行时间 < 10m)", "url": "", "status": "0", "value": "0", "priority": "2", "lastchange": "0", "comments": "主机正常运行时间小于10 分钟”, “错误”: “”, “templateid”: “10016”, “类型”: “0”, “状态”: “0”, “标志”: “0”, “恢复模式”: “0”, “恢复表达”: “”, “关联模式”: “0”, “关联标签”: “”, “manual_close”: “0”, “opdata”: “”, “事件名称”: “”, “uuid”: “”, “url_name”: “”, “函数”: [ { “函数id”: “13513”, “itemid”: “24350”, “triggerid”: “14062”, “参数”: “$”, “函数”: “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 自我监控进程 < 100% 繁忙", "priority": "4" }, { "triggerid": "13824", "description": "Zabbix discoverer 进程超过75% 繁忙”, “优先级”:“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": "服务状态", "tags": [ { "tag": "service", "value": "{{ITEM.VALUE}.regsub(\"服务 (.*) 已停止\", \"\\1\")}" }, { "tag": "error", "value": "" } ] } ], "id": 1 }
CTrigger::get() in ui/include/classes/api/services/CTrigger.php.