更新时间:2024-11-22 GMT+08:00

修改告警规则

功能介绍

修改告警规则。

告警规则V1接口只支持配置单资源单策略规则,建议使用批量增加告警规则资源批量删除告警规则资源修改告警规则策略(全量修改)与前端功能配套使用。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

PUT /V1.0/{project_id}/alarms/{alarm_id}

  • 参数说明
    表1 参数说明

    名称

    是否必选

    说明

    project_id

    项目ID。

    获取方式请参见获取项目ID

    alarm_id

    告警规则的ID。

  • 样例
    PUT https://{云监控的endpoint}/V1.0/{project_id}/alarms/{alarm_id}

请求消息

  • 请求参数
    表2 参数说明

    名称

    是否必选

    类型

    说明

    alarm_name

    String

    告警名称,只能包含0-9/a-z/A-Z/_/-或汉字。

    alarm_description

    String

    告警描述,长度0-256。

    condition

    Condition object

    告警规则设置的告警策略。

    详细参数说明请参见表3

    alarm_action_enabled

    Boolean

    是否启用该条告警触发的动作,默认为true。

    说明:

    若alarm_action_enabled为true,对应的alarm_actions、ok_actions至少有一个不能为空。若alarm_actions、ok_actions同时存在时,notificationList值保持一致。

    alarm_level

    Integer

    告警级别。默认为2,级别为1、2、3、4。分别对应紧急、重要、次要、提示。

    alarm_type

    String

    告警类型。支持的枚举类型:

    EVENT.SYS:针对系统事件的告警规则。

    EVENT.CUSTOM:针对自定义事件的告警规则。

    RESOURCE_GROUP:针对资源分组的告警规则。

    alarm_actions

    Array of objects

    告警触发的动作。 结构样例如下: { "type": "notification","notificationList": ["urn:smn:southchina:68438a86d98e427e907e0097b7e35d47:sd"] }

    其中type取值:

    notification:通知。

    autoscaling:弹性伸缩。

    详细参数说明请参见表4

    insufficientdata_actions

    Array of objects

    数据不足触发的动作(该参数已废弃,建议无需配置)。

    详细参数说明请参见表6

    ok_actions

    Array of objects

    告警恢复触发的动作。

    详细参数说明请参见表5

    表3 condition字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    period

    Integer

    监控数据粒度。

    取值范围:

    • 1,实时数据
    • 300,5分钟粒度
    • 1200,20分钟粒度
    • 3600,1小时粒度
    • 14400,4小时粒度
    • 86400,1天粒度

    filter

    String

    数据聚合方式,支持的聚合方式如下:

    • average:聚合周期内指标数据的平均值。
    • max:聚合周期内指标数据的最大值。
    • min:聚合周期内指标数据的最小值。
    • sum:聚合周期内指标数据的求和值。
    • variance:聚合周期内指标数据的方差。

    comparison_operator

    String

    告警阈值的比较条件,可以是>、=、<、>=、<=。

    value

    Double

    告警阈值。取值范围[0, Number.MAX_VALUE],Number.MAX_VALUE值为1.7976931348623157e+108。具体阈值取值请参见附录中各服务监控指标中取值范围,如支持监控的服务列表中ECS的CPU使用率cpu_util取值范围可配置80。

    unit

    String

    数据的单位,最大长度为32位。

    count

    Integer

    触发告警的连续发生次数,取值范围[1, 5]。

    suppress_duration

    Integer

    发送告警的周期。值可为0、300、600、900、1800、3600、10800、21600、43200、86400。0表示只告警一次,300表示每5分钟告警一次,600表示每10分钟告警一次,900表示每15分钟告警一次,1800表示每30分钟告警一次,3600表示每1小时告警一次,10800表示每3小时告警一次,21600表示每6小时告警一次,43200表示每12小时告警一次,86400表示每1天告警一次。

    表4 alarm_actions字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    type

    String

    告警通知类型,取值如下:
    • notification:通知。
    • autoscaling:弹性伸缩。

    notificationList

    Array of strings

    告警状态发生变化时,被通知对象的列表。通知对象ID最多可以配置5个。topicUrn可从SMN获取,具体操作请参考查询Topic列表

    当type为notification时,notificationList列表不能为空;当type为autoscaling时,列表必须为[]。

    说明:
    • 若要使Auto Scaling告警规则生效,必须绑定伸缩策略,具体操作请参考创建弹性伸缩策略
    • 若alarm_action_enabled为true,对应的alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions至少有一个不能为空。
    • 若alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions同时存在时,notificationList值保持一致。
    • 被通知对象的ID列表的参数类型为字符串。
    表5 ok_actions字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    type

    String

    告警恢复触发告警通知类型,取值如下:
    • notification:通知。
    • autoscaling:弹性伸缩。

    notificationList

    Array of objects

    告警状态发生变化时,被通知对象的列表,通知对象列表为字符串。列表最长为5。topicUrn可从SMN获取,具体操作请参考查询Topic列表

    说明:

    若alarm_action_enabled为true,对应的alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions至少有一个不能为空。

    若alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions同时存在时,notificationList值保持一致。

    表6 insufficientdata_actions字段数据结构说明

    名称

    是否必选

    参数类型

    说明

    type

    String

    告警恢复触发告警通知类型,取值如下:
    • notification:通知。
    • autoscaling:弹性伸缩。

    notificationList

    Array of objects

    告警状态发生变化时,被通知对象的列表。通知对象ID最多可以配置5个。topicUrn可从SMN获取,具体操作请参考查询Topic列表

    说明:
    • 若alarm_action_enabled为true,对应的alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions至少有一个不能为空。
    • 若alarm_actions、insufficientdata_actions(该参数已废弃,建议无需配置)、ok_actions同时存在时,notificationList值保持一致。
    • 被通知对象的ID列表的参数类型为字符串。
  • 请求样例
    {
       "alarm_name": "alarm-update-test01",
       "alarm_description": "alarm-update-test01",
       "condition": {
           "comparison_operator": ">=",
           "count": 3,
           "filter": "average",
           "period": 1,
           "value": 95
       },
       "alarm_action_enabled": false,
       "alarm_level": 2
    }

返回值

  • 正常

    204

  • 异常

    返回值

    说明

    400 Bad Request

    请求错误。

    401 Unauthorized

    未提供认证信息,或认证信息错误。

    403 Forbidden

    请求页面被禁止访问。

    408 Request Timeout

    请求超出了服务器的等待时间。

    429 Too Many Requests

    当前请求过多。

    500 Internal Server Error

    请求未完成,服务异常。

    503 Service Unavailable

    系统暂时不可用,请求受限。

错误码

请参考返回错误码说明