调用 ModifyAlarm 接口修改告警策略。
此接口的调用频率限制为 20 次/s,超出频率限制会报错 ExceedQPSLimit。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
AlarmId | String | 是 | al**** | 告警策略 ID。 |
AlarmName | String | 否 | test-alarm | 告警策略名称。命名规则请参考资源命名规则。 |
Status | Boolean | 否 | true | 是否开启告警策略。默认值为 true,即开启。 |
QueryRequest | Array of QueryRequest | 否 | / | 监控任务执行语句,可配置 1~3 条。 |
RequestCycle | Object of RequestCycle | 否 | / | 监控任务的执行周期。 |
Condition | String | 否 |
| 告警触发条件。告警策略支持以
说明
|
Severity | String | 否 |
| 告警通知的级别,即告警的严重程度。支持设置为 说明
|
TriggerPeriod | Integer | 否 | 2 | 持续周期。持续满足触发条件 TriggerPeriod 个周期后,再进行告警;最小值为 1,最大值为 10,默认为 1。 |
AlarmPeriod | Integer | 否 |
| 告警通知的发送周期。当告警持续触发次数达到指定限额 TriggerPeriod 时,日志服务会根据指定的周期发送告警通知。取值范围是 10~1440,单位:分钟。 说明
|
AlarmPeriodDetail | Object of AlarmPeriodSetting | 否 |
| 告警通知发送的周期。当告警持续触发次数达到指定限额 TriggerPeriod 时,日志服务会根据指定的周期发送告警通知。取值范围是 10~1440,单位:分钟。 说明
|
AlarmNotifyGroup | Array of String | 否 | / | 告警对应的通知组列表。 |
UserDefineMsg | String | 否 |
| 自定义告警通知内容。支持插入内容变量、函数,详细说明请参考内容变量、内容函数。 |
JoinConfigurations | Array of JoinConfig | 否 |
| 告警检索分析结果集合操作的相关配置。日志服务将一个检索分析结果作为一个集合,并基于集合结果判断是否触发告警。 |
TriggerConditions | Array of TriggerCondition | 否 |
| 告警触发条件列表。最多可配置 10 条告警触发条件。 说明
|
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Query | String | 是 | Failed | select count(*) as errNum | 检索分析语句,支持的最大长度为 1024 字符。 |
Number | Integer | 是 | 1 | 告警对象序号,从 1 开始递增。 |
TopicId | String | 是 | 864********* | 告警策略所要监控的日志主题 ID。 |
TopicName | String | 否 | yrdt | 告警策略所要监控的日志主题名称。 |
EndTimeOffset | Integer | 是 | -15 | 查询的终止时间,相对当前的历史时间,单位为分钟,取值为非正整数,须大于 StartTimeOffset,最大值为 0,最小值为 -1440。 |
StartTimeOffset | Integer | 是 | -15 | 查询的起始时间,相对当前的历史时间,单位为分钟,取值为非正整数,最大值为 0,最小值为 -1440。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Time | Integer | 是 | 10 | 调度的周期或者定期执行的时间点(距离 00:00 的分钟数),取值范围为 1~1440,单位为分钟。 |
Type | String | 是 |
| 调度周期类型。可选值:
|
CronTab | String | 否 | 0 18 * * * | Cron表达式,日志服务通过 Cron 表达式指定告警任务定时执行。Cron 表达式的最小粒度为分钟,24 小时制。例如 0 18 * * * 表示每天 18 点整执行一次告警任务。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
SMS | Integer | 否 | 10 | 短信告警周期,单位为分钟,取值范围为 10~1440。 |
Integer | 否 | 10 | 邮件告警周期,单位为分钟,取值范围为 1~1440。 | |
Phone | Integer | 否 | 10 | 电话告警周期,单位为分钟,取值范围为 10~1440。 |
GeneralWebhook | Integer | 否 | 10 | 自定义 Webhook 告警周期,单位为分钟,取值范围为 1~1440。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Condition | String | 否 | $1.uid==$2.uid | 使用左联或右联时的表达式。 |
SetOperationType | String | 是 |
| 集合操作类型。可选值:
|
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Severity | String | 否 | notice | 告警通知的级别,即告警的严重程度。支持设置为 notice 、warning 或 critical ,严重程度递增。默认为 notice 。 |
Condition | String | 否 | $1.cnt == 5 | 告警触发条件表达式。 |
CountCondition | String | 否 | __count__ == 10 | 有数据、有特定条数据场景下的数值表达式,通过 __count__ 来实现。 |
本接口无特有的返回参数。更多信息请见返回结构。
PUT https://tls-{Region}.ivolces.com/ModifyAlarm HTTP/1.1 Content-Type: application/json { "AlarmId": "47c5e05a-0c13-49be-b8ad-****", "AlarmName": "yyj-test", "QueryRequest": [ { "Query": "* | SELECT COUNT(*) AS cnt", "Number": 1, "EndTimeOffset": 0, "StartTimeOffset": -15, "TopicId": "c14ef1c0-7843-488f-ac51-****" }, { "Query": "* | SELECT *", "Number": 2, "EndTimeOffset": 0, "StartTimeOffset": -15, "TopicId": "c14ef1c0-7843-488f-ac51-****" } ], "RequestCycle": { "Type": "CronTab", "Time": 0, "CronTab": "0/1 * * * *" }, "TriggerConditions": [ { "Condition": "", "Severity": "notice", "CountCondition": "__count__ == 10" }, { "Condition": "$1.cnt == 5", "Severity": "notice", "CountCondition": "" }, { "Condition": "", "Severity": "notice", "CountCondition": "__count__ == 1" } ], "TriggerPeriod": 1, "AlarmPeriod": 30, "AlarmPeriodDetail": { "SMS": 10, "Phone": 10, "Email": 10, "GeneralWebhook": 1 }, "AlarmNotifyGroup": [ "7456eb3e-bf6d-444b-8708-****" ], "UserDefineMsg": "", "JoinConfigurations": [ { "SetOperationType": "LeftJoin", "Condition": "$1.cnt == $2.count" } ] }
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
HTTP 状态码 | 错误码 | 错误信息 | 说明 |
---|---|---|---|
400 | InvalidArgument | Invalid argument key %s, value %s, please check argument. | 参数不合法。 |
400 | AlarmQuotaExceed | Alarm Quota Exceed. | 超过告警策略限额。 |
404 | AlarmNotExist | Alarm xxx does not exist | 告警策略不存在。 |
500 | InternalServerError | We encountered an unexpected server error . Please try again later. | 服务器内部错误。 |