创建
说明
object trigger.create(object/array **triggers**)
此方法允许创建新的触发器。
参数
(object/array)
需要创建的触发器。 除standard trigger properties之外,该方法接受以下参数。
Parameter 参数 | Type 类型 | Description 说明 |
---|---|---|
dependencies | array 数组 | 依赖触发的触发器。 触发器必须已定义 triggerid 属性。 |
tags | array 数组 | Trigger tags. 触发器标签。 |
指定的触发器表达式必须为展开式。
返回值
(object)
返回一个对象,该对象包含在triggerids
属性中已创建触发器的ID,返回ID的顺序与传递触发器的顺序相匹配。
范例
创建触发器
创建具有单个触发依赖关系的触发器。
请求:
{
"jsonrpc": "2.0",
"method": "trigger.create",
"params": [
{
"description": "Processor load is too high on {HOST.NAME}",
"expression": "{Linux server:system.cpu.load[percpu,avg1].last()}>5",
"dependencies": [
{
"triggerid": "17367"
}
]
},
{
"description": "Service status",
"expression": "{Linux server:log[/var/log/system,Service .* has stopped].strlen()}<>0",
"dependencies": [
{
"triggerid": "17368"
}
],
"tags": [
{
"tag": "service",
"value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}"
},
{
"tag": "error",
"value": ""
}
]
}
],
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"triggerids": [
"17369",
"17370"
]
},
"id": 1
}
源码
CTrigger::create()方法可在frontends/php/include/classes/api/services/CTrigger.php中参考。