integer/array triggerprototype.get(object parameters)
该方法允许根据给定的参数检索触发器原型。
此方法可供任何类型的用户使用。可以在用户角色设置中撤销调用该方法的权限。 更多信息请参见 User roles。
(object) 定义期望输出的参数。
该方法支持以下参数。
| 参数 | 数据类型 | 描述 |
|---|---|---|
| active | flag | 仅返回属于受监控主机的已启用触发器原型。 |
| discoveryids | ID/array | 仅返回属于给定LLD规则的触发器原型。 |
| functions | string/array | 仅返回使用给定函数的触发器。 有关支持函数的列表,请参阅Supported functions页面。 |
| 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属性中返回触发器原型及其依赖的触发器。 |
| selectDiscoveryRule | query | 在discoveryRule属性中返回触发器原型所属的LLD rule。 |
| selectFunctions | query | 在functions属性中返回触发器原型中使用的函数。函数objects表示触发器表达式中使用的函数,并具有以下属性: functionid - 函数的(ID) ID;itemid - 函数中使用的监控项的(ID) ID;function - 函数的(string)名称;parameter - 传递给函数的(string)参数。query参数在返回的string中被$符号替换。 |
| selectHostGroups | query | 在hostgroups属性中返回触发器原型所属的主机组。 |
| selectHosts | query | 在hosts属性中返回触发器原型所属的主机。 |
| selectItems | query | 在items属性中返回触发器原型使用的监控项和监控项原型。 |
| selectTags | query | 在tags属性中返回触发器原型的标签。 |
| selectTemplateGroups | query | 在templategroups属性中返回触发器原型所属的模板组。 |
| filter | object | 仅返回与给定过滤器完全匹配的结果。 接受一个object,其中键是属性名称,值是要匹配的单个值或array。 不支持 text类型的数据类型属性。支持附加属性: host - 触发器原型所属的主机的技术名称;hostid - 触发器原型所属的主机的ID。 |
| limitSelects | integer | 限制子查询返回的记录数。 适用于以下子查询: selectHosts - 结果将按host排序。 |
| sortfield | string/array | 按给定属性对结果进行排序。 可能的值: triggerid, description, status, priority, discovered。 |
| 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 的数量。从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
}ui/include/classes/api/services/CTriggerPrototype.php 中的 CTriggerPrototype::get()。