检索触发器原型

描述

integer/array triggerprototype.get(object parameters)

此方法允许根据指定的参数检索触发器原型.

此方法适用于任何类型的用户, 调用方法的权限可以在用户角色设置中进行撤销,请参阅 用户角色了解更多信息.

参数

(object) 定义需要输出的参数.

该方法支持以下参数.

参数类型描述
activeflag仅返回属于被监控主机的已启用触发器原型.
discoveryidsstring/array仅返回属于指定低级别发现规则的触发器原型.
functionsstring/array仅返回使用指定函数的触发器.

有关支持的功能列表,请参阅支持的触发功能 页面.
groupstring仅返回属于指定名称的主机组中属于主机的触发器原型.
groupidsstring/array仅返回来自指定主机组ID中属于主机的触发器原型.
hoststring仅返回属于指名称的主机的触发器原型.
hostidsstring/array仅返回属于指定主机id的触发器原型.
inheritedboolean如果设置为true,仅返回从模板继承的触发器原型.
maintenanceboolean如果设置为true,仅返回属于在维护中主机的已启用触发器原型,.
min_severityinteger仅返回严重性大于或等于指定严重性的触发器原型.
monitoredflag仅返回属于被监控主机且仅包含已启用监控项的已启用触发器原型.
templatedboolean如果设置为 true 仅返回属于模板的触发器原型.
templateidsstring/array仅返回属于指定模板ID的触发器原型.
triggeridsstring/array仅返回属于给定ID的触发器原型.
expandExpressionflag展开在触发器原型表达式中的函数和宏.
selectDependenciesquerydependencies 属性中返回触发器原型和触发器原型所依赖的触发器.
selectDiscoveryRulequery返回触发器原型所属的 低级别发现规则 .
selectFunctionsqueryfunctions 属性中返回触发器原型中使用的函数.

函数对象表示触发器表达式中使用的函数,并具有以下属性:
functionid - (string) 函数的ID;
itemid - (string) 在函数中使用的监控项ID;
function - (string) 函数名称;
parameter - (string) 传递给函数的参数,查询参数被返回字符串中的 $ 符号替换.
selectGroupsquery 属性中返回触发器原型所属的主机组.
selectHostsquery主机 属性中返回触发器原型所属的主机.
selectItemsquery返回项目和项目原型使用 监控项 属性中的触发器原型.
selectTagsquery返回 标签 中的触发器原型标签.
filterobject仅返回与指定筛选完全匹配的结果.

接受一个数组,其中键是属性名称,值可以是单个值,也可以是要匹配的值数组.

支持额外的筛选:
host - 触发器原型所属主机的正式名称;
hostid - 触发器原型所属主机的ID.
limitSelectsinteger限制子查询返回的记录数量.

适用于以下子查询:
selectHosts - 以host分类结果.
sortfieldstring/array根据指定属性对结果分类.

有效的值为: triggerid, description, statuspriority.
countOutputboolean这些参数十分普遍并和用于所有 get 方法,更多详情可 参考说明.
editableboolean
excludeSearchboolean
limitinteger
outputquery
preservekeysboolean
searchobject
searchByAnyboolean
searchWildcardsEnabledboolean
sortorderstring/array
startSearchboolean

返回值

(integer/array) 返回两者其中任一:

  • 一组对象.
  • 如果已经使用了countOutput参数,则检索对象的计数.

示例

从低级别发现规则中检索触发器原型

从低级别发现规则中检索所有的触发器原型和相关函数.

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "triggerprototype.get",
  4. "params": {
  5. "output": "extend",
  6. "selectFunctions": "extend",
  7. "discoveryids": "22450"
  8. },
  9. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  10. "id": 1
  11. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "triggerid": "13272",
  6. "expression": "{12598}<20",
  7. "description": "Free inodes is less than 20% on volume {#FSNAME}",
  8. "url": "",
  9. "status": "0",
  10. "priority": "2",
  11. "comments": "",
  12. "templateid": "0",
  13. "type": "0",
  14. "flags": "2",
  15. "recovery_mode": "0",
  16. "recovery_expression": "",
  17. "correlation_mode": "0",
  18. "correlation_tag": "",
  19. "manual_close": "0",
  20. "opdata": "",
  21. "discover": "0",
  22. "functions": [
  23. {
  24. "functionid": "12598",
  25. "itemid": "22454",
  26. "triggerid": "13272",
  27. "parameter": "$",
  28. "function": "last"
  29. }
  30. ]
  31. },
  32. {
  33. "triggerid": "13266",
  34. "expression": "{13500}<20",
  35. "description": "Free disk space is less than 20% on volume {#FSNAME}",
  36. "url": "",
  37. "status": "0",
  38. "priority": "2",
  39. "comments": "",
  40. "templateid": "0",
  41. "type": "0",
  42. "flags": "2",
  43. "recovery_mode": "0",
  44. "recovery_expression": "",
  45. "correlation_mode": "0",
  46. "correlation_tag": "",
  47. "manual_close": "0",
  48. "opdata": "",
  49. "discover": "0",
  50. "functions": [
  51. {
  52. "functionid": "13500",
  53. "itemid": "22686",
  54. "triggerid": "13266",
  55. "parameter": "$",
  56. "function": "last"
  57. }
  58. ]
  59. }
  60. ],
  61. "id": 1
  62. }

根据标签检索特定的触发器原型

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "triggerprototype.get",
  4. "params": {
  5. "output": [
  6. "triggerid",
  7. "description"
  8. ]
  9. "selectTags": "extend",
  10. "triggerids": [
  11. "17373"
  12. ]
  13. },
  14. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  15. "id": 1
  16. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": [
  4. {
  5. "triggerid": "17373",
  6. "description": "Free disk space is less than 20% on volume {#FSNAME}",
  7. "tags": [
  8. {
  9. "tag": "volume",
  10. "value": "{#FSNAME}"
  11. },
  12. {
  13. "tag": "type",
  14. "value": "{#FSTYPE}"
  15. }
  16. ]
  17. }
  18. ],
  19. "id": 1
  20. }

另见

源码

CTriggerPrototype::get() in ui/include/classes/api/services/CTriggerPrototype.php.