创建

描述

object triggerprototype.create(object/array **triggerPrototypes**)

这个方法可以创建新的触发器原型。

参数

(object/array)需要创建的触发器原型。 除standard trigger prototype properties之外,此方法还接受以下参数。

参数类型说明
dependenciesarray依赖触发器原型的触发器和触发器原型。

触发器必须已定义triggerid属性。
tagsarray触发器原型标签。

指定的触发器表达式必须为展开式,并且必须包含至少一个监控项原型。

返回值

(object)返回一个对象,该对象包含在triggerids属性中已创建触发器原型的ID,返回ID的顺序与传递触发器原型的顺序相匹配。

范例

创建触发器原型

创建一个触发器原型来检测磁盘剩余空间是否小于20%。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "triggerprototype.create",
  4. "params": {
  5. "description": "Free disk space is less than 20% on volume {#FSNAME}",
  6. "expression": "{Zabbix server:vfs.fs.size[{#FSNAME},pfree].last()}<20",
  7. "tags": [
  8. {
  9. "tag": "volume",
  10. "value": "{#FSNAME}"
  11. },
  12. {
  13. "tag": "type",
  14. "value": "{#FSTYPE}"
  15. }
  16. ]
  17. },
  18. "auth": "038e1d7b1735c6a5436ee9eae095879e",
  19. "id": 1
  20. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "triggerids": [
  5. "17372"
  6. ]
  7. },
  8. "id": 1
  9. }

源码

CTriggerPrototype::create()方法可在frontends/php/include/classes/api/services/CTriggerPrototype.php中参考。