修改一个监控器¶
POST /api/v1/checker/{rule_uuid}/modify
概述¶
根据rule_uuid
修改指定的监控器信息
路由参数¶
参数名 | 类型 | 必选 | 说明 |
---|---|---|---|
rule_uuid | string | Y | 检查项的ID |
Body 请求参数¶
参数名 | 类型 | 必选 | 说明 |
---|---|---|---|
extend | json | 额外信息 允许为空: True |
|
monitorUUID | string | Y | 分组id 允许为空: False |
dashboardUUID | string | 关联仪表板id 允许为空: False |
|
jsonScript | json | 规则配置 允许为空: False |
|
jsonScript.type | string | Y | 检查方法类型 例子: simpleCheck 允许为空: False |
jsonScript.windowDql | string | window dql 允许为空: False |
|
jsonScript.title | string | Y | 生成event的标题 例子: 监视器: {{monitor_name}} 检查器:{{monitor_checker_name}} 触发值:{{M1}} 允许为空: False 允许空字符串: True |
jsonScript.message | string | event内容 例子: status: {{status}}, title: {{title}} 允许为空: False 允许空字符串: True |
|
jsonScript.recoverTitle | string | 输出恢复事件标题模板 例子: 监视器: {{monitor_name}} 检查器:{{monitor_checker_name}} 触发值:{{M1}} 允许为空: False 允许空字符串: True |
|
jsonScript.recoverMessage | string | 输出恢复事件信息模板 例子: status: {{status}}, title: {{title}} 允许为空: False 允许空字符串: True |
|
jsonScript.noDataTitle | string | 输出无数据事件标题模板 例子: 监视器: {{monitor_name}} 检查器:{{monitor_checker_name}} 触发值:{{M1}} 允许为空: False 允许空字符串: True |
|
jsonScript.noDataMessage | string | 输出无数据事件信息模板 例子: status: {{status}}, title: {{title}} 允许为空: False 允许空字符串: True |
|
jsonScript.noDataRecoverTitle | string | 输出无数据恢复上传事件标题模板 例子: 监视器: {{monitor_name}} 检查器:{{monitor_checker_name}} 触发值:{{M1}} 允许为空: False 允许空字符串: True |
|
jsonScript.noDataRecoverMessage | string | 输出无数据恢复上传事件信息模板 例子: status: {{status}}, title: {{title}} 允许为空: False 允许空字符串: True |
|
jsonScript.every | string | 检查频率 例子: 1m 允许为空: False |
|
jsonScript.interval | integer | 查询区间,即一次查询的时间范围时差 例子: 60 允许为空: False |
|
jsonScript.range | integer | 针对高级检测,突变检测的range参数,单位s 例子: 3600 允许为空: False |
|
jsonScript.range_2 | integer | 针对高级检测,突变检测的range_2参数,单位s 例子: 600 允许为空: False |
|
jsonScript.periodBefore | integer | 针对高级检测,突变检测的昨日, 一小时前参数,单位s 例子: 600 允许为空: False |
|
jsonScript.recoverNeedPeriodCount | integer | 指定异常在几个检查周期之后生成恢复事件 例子: 60 允许为空: False |
|
jsonScript.noDataInterval | integer | 多长时间内无数据则产生无数据事件 例子: 60 允许为空: False |
|
jsonScript.noDataAction | string | 无数据处理操作 允许为空: False 可选值: ['none', 'noData', 'recover'] |
|
jsonScript.checkFuncs | array | 检查函数信息列表 例子: [{'funcId': 'xxx', 'kwargs': {}}] 允许为空: False |
|
jsonScript.groupBy | array | 触发维度 例子: ['医院'] 允许为空: False |
|
jsonScript.targets | array | 检查目标 例子: [{'dql': 'M:: 士兵信息 :(AVG(潜力值 )) [::auto] by 性别 ', 'alias': 'M1'}] 允许为空: False |
|
jsonScript.checkerOpt | json | 检查条件设置 允许为空: False |
|
jsonScript.checkerOpt.rules | array | 触发条件列表 例子: [{'status': 'warning', 'conditions': [{'operands': [60], 'operator': '>', 'alias': 'M1'}], 'conditionLogic': 'and'}] 允许为空: False |
|
jsonScript.checkerOpt.infoEvent | boolean | 是否在持续正常时产生info事,默认false 例子: True |
|
jsonScript.checkerOpt.diffMode | string | 高级检测中突变检测的,差值模式,枚举值, value, percent 例子: value 可选值: ['value', 'percent'] |
|
jsonScript.checkerOpt.direction | string | 高级检测中突变检测,区间检测的触发条件方向 例子: up 可选值: ['up', 'down', 'both'] |
|
jsonScript.checkerOpt.eps | float | 距离参数,取值范围:0 ~ 3.0 例子: 0.5 |
参数补充说明¶
请求例子¶
curl 'https://openapi.guance.com/api/v1/checker/rul_0cc7449fdfc5496ba4e687d57d1af99e/modify' \
-H 'DF-API-KEY: <DF-API-KEY>' \
-H 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"extend":{"querylist":[{"datasource":"dataflux","qtype":"dql","query":{"code":"Result","type":"simple","namespace":"metric","dataSource":"conntrack","field":"entries","fieldType":"integer","alias":"","fieldFunc":"avg","groupByTime":"","groupBy":["host"],"q":"M::`conntrack`:(AVG(`entries`)) BY `host`","funcList":[]},"uuid":"253d080f-5d07-48c5-8b8a-13b0b6b3f538"}],"funcName":"","rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["1200"],"operator":">="}],"status":"critical"}]},"jsonScript":{"title":"触发紧急事件33","message":"","noDataTitle":"","noDataMessage":"","type":"simpleCheck","every":"5m","groupBy":["host"],"interval":300,"targets":[{"dql":"M::`conntrack`:(AVG(`entries`)) BY `host`","alias":"Result"}],"checkerOpt":{"rules":[{"conditionLogic":"and","conditions":[{"alias":"Result","operands":["1200"],"operator":">="}],"status":"critical"}],"infoEvent":false},"recoverNeedPeriodCount":2},"monitorUUID":"monitor_042705ea48124c3aa9ad6e4410b91a07"}' \
--compressed
响应¶
{
"code": 200,
"content": {
"createAt": 1677566939,
"creator": "acnt_37ca16a6bf54413090d5e8396fc859cd",
"crontabInfo": {
"crontab": "*/5 * * * *",
"id": "cron-hxebFHurzmOT"
},
"deleteAt": -1,
"extend": {
"funcName": "",
"querylist": [
{
"datasource": "dataflux",
"qtype": "dql",
"query": {
"alias": "",
"code": "Result",
"dataSource": "conntrack",
"field": "entries",
"fieldFunc": "avg",
"fieldType": "integer",
"funcList": [],
"groupBy": [
"host"
],
"groupByTime": "",
"namespace": "metric",
"q": "M::`conntrack`:(AVG(`entries`)) BY `host`",
"type": "simple"
},
"uuid": "253d080f-5d07-48c5-8b8a-13b0b6b3f538"
}
],
"rules": [
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"1200"
],
"operator": ">="
}
],
"status": "critical"
}
]
},
"id": 175,
"jsonScript": {
"checkerOpt": {
"infoEvent": false,
"rules": [
{
"conditionLogic": "and",
"conditions": [
{
"alias": "Result",
"operands": [
"1200"
],
"operator": ">="
}
],
"status": "critical"
}
]
},
"every": "5m",
"groupBy": [
"host"
],
"interval": 300,
"message": "",
"name": "触发紧急事件33",
"noDataMessage": "",
"noDataTitle": "",
"recoverNeedPeriodCount": 2,
"targets": [
{
"alias": "Result",
"dql": "M::`conntrack`:(AVG(`entries`)) BY `host`"
}
],
"title": "触发紧急事件33",
"type": "simpleCheck"
},
"monitorName": "默认",
"monitorUUID": "monitor_042705ea48124c3aa9ad6e4410b91a07",
"refKey": "",
"status": 0,
"type": "trigger",
"updateAt": 1677668937,
"updator": "wsak_ecdec9f27d6c482a997c218b2fb351a0",
"uuid": "rul_0cc7449fdfc5496ba4e687d57d1af99e",
"workspaceUUID": "wksp_ed134a6485c8484dbd0e58ce9a9c6115"
},
"errorCode": "",
"message": "",
"success": true,
"traceId": "TRACE-195D447B-014A-46E3-B503-4E015BD059C4"
}