integer/array trigger.get(object parameters)
此方法允许根据指定的参数检索触发器.
此方法适用于任何类型的用户,可以在用户角色设置中撤销调用该方法的权限,前往 用户角色 查看更多详细信息.
(object)
定义所需输出的参数。
该方法支持以下参数。
参数 | 类型 | 描述 |
---|---|---|
triggerids | string/array | 仅返回给定ID的触发器。 |
groupids | string/array | 仅返回属于给定主机组的触发器。 |
templateids | string/array | 仅返回属于给定模板的触发器。 |
hostids | string/array | 仅返回属于给定主机的触发器。 |
itemids | string/array | 仅返回包含给定监控项的触发器。 |
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 - (默认) 与/或; 2 - 或。 |
tags | array of objects | 仅返回具有给定标签的触发器。根据运算符的值,进行标签的精确匹配或大小写敏感或不敏感的搜索。 格式: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...] 。空数组返回所有触发器。 可能的运算符类型: 0 - (默认) 包含; 1 - 等于; 2 - 不包含; 3 - 不等于 4 - 存在; 5 - 不存在。 |
expandComment | flag | 在触发器描述中展开宏。 |
expandDescription | flag | 在触发器名称中展开宏。 |
expandExpression | flag | 在触发器表达式中展开函数和宏。 |
selectGroups | query | 在groups属性中返回触发器所属的主机组。 |
selectHosts | query | 在hosts属性中返回触发器所属的主机。 |
selectItems | query | 在items属性中返回触发器包含的监控项。 |
selectFunctions | query | 在 functions 属性中返回触发器中使用的函数。函数对象表示触发器表达式中使用的函数,并且具有以下属性: functionid - (字符串) 函数的ID;itemid - (字符串) 函数中使用的监控项的ID;function - (字符串) 函数的名称;parameter - (字符串) 传递给函数的参数。查询参数在返回的字符串中由 $ 符号替换。 |
selectDependencies | query | 在 dependencies 属性中返回触发器依赖的触发器。 |
selectDiscoveryRule | query | 返回创建触发器的低级发现规则。 |
selectLastEvent | query | 在lastEvent属性中返回最后一个重要的触发器事件。 |
selectTags | query | 在tags属性中返回触发器标签。 |
selectTriggerDiscovery | query | 在 triggerDiscovery 属性中返回触发器发现对象。触发器发现对象将触发器链接到它从中创建的触发器原型。它具有以下属性: parent_triggerid - (字符串) 触发器原型的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"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"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": "",
"functions": [
{
"functionid": "13513",
"itemid": "24350",
"triggerid": "14062",
"parameter": "$",
"function": "last"
}
]
}
],
"id": 1
}
检索在问题状态下的所有触发器的ID,名称和严重性,并按严重性级别按降序分类。
请求:
{
"jsonrpc": "2.0",
"method": "trigger.get",
"params": {
"output": [
"triggerid",
"description",
"priority"
],
"filter": {
"value": 1
},
"sortfield": "priority",
"sortorder": "DESC"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"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"
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"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
}
CTrigger::get() in ui/include/classes/api/services/CTrigger.php.