创建告警触发策略

最近更新时间:2018-08-21 16:18:43

1. 接口描述

本接口(CreateScalingPolicy)用于创建告警触发策略。
接口请求域名:

scaling.api.qcloud.com

1)当adjustmentType是TotalCapaciy时,表示将当前伸缩组的CVM实例数量调整到adjustmentValue指定的数量,adjustmentValue值必须大于等于0。

2)当adjustmentType是QuantityChangeInCapacity或PercentChangeInCapacity,对应的adjustmentValue值为正数表示增加实例,为负数表示减少实例。

3)当adjustmentType是PercentChangeInCapacity,adjusmentValue表示的是当前实例的百分比。

4)一个伸缩组内最多只能创建100个告警触发策略,详见使用限制

2. 输入参数

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,见公共请求参数页面。其中,此接口的Action字段为CreateScalingPolicy。

参数名称 是否必选 类型 描述
scalingGroupId String 要创建告警触发策略的伸缩组Id,可调用查询伸缩组列表(DescribeScalingGroup)接口查询。
scalingPolicyName String 用户自定义的告警策略名称。
metric String metric参数规定了具体的伸缩策略,格式为json格式。
{"dimensionName":"cpu_usage","comparisonOperator":"Greater","threshold":50,"repeatTimes":2}
cpu使用率大于50%,且在接下来的2个周期(5分钟为1周期)都符合此规则,则促发伸缩行为,增加或减少对应的云服务器。详细统计规则
adjustmentType String 伸缩规则的调整方式。只有3种取值:
TotalCapacity: 将当前伸缩组的实例数量调整到指定数量。
QuantityChangeInCapacity:增加或减少指定数量的实例。
PercentChangeInCapacity:增加或减少指定比例的实例(百分比)。
adjustmentValue Int 伸缩规则的调整值,若为负号表示减小实例。 adjustmentType的3种取值范围分别如下:
TotalCapacity:0至30
QuantityChangeInCapacity : -30至30
PercentChangeInCapacity:-100至100。
cooldown Int 冷却时间,单位为秒,表示在同一伸缩组内,一个伸缩活动执行完成后的一段锁定时间。在这段时间内,该伸缩组不能执行其他伸缩活动。
notifyIds.n String 通知组ID,即为用户组ID(groupId),最大为20个,数组下标从0开始。可调用获取用户组列表(DescribeUserGroup)接口查询。

其中metric参数规定了具体的伸缩策略,格式为json格式,其中各个参数如下:

参数名称 是否必选 类型 描述
comparisonOperator String 比较运算符,可选值:
Greater:大于
EqualOrGreater:大于或等于
Less:小于。
EqualOrLess:小于或等于。
Equal:相等。
NotEqual:不相等。
dimensionName String 维度,可选值:
cpu_usage:cpu使用率。
mem_usage:内存使用率。
lan_outtraffic:内网出带宽。
lan_intraffic:内网入带宽。
threshold Int 告警阈值:
cpu_usage: 数值范围 [0,100],单位:%
mem_usage:数值范围 [0,100],单位:%
lan_outtraffic:数值范围 >0,单位:Bps
lan_intraffic:数值范围 >0,单位:Bps
repeatTimes Int 重复周期:
数值范围 [1,10],默认为3次

3.输出参数

参数名称 类型 描述
code Int 公共错误码, 0表示成功,其他值表示失败。详见错误码页面的公共错误码
codeDesc String 业务侧错误码。成功时返回Success,错误时返回具体业务错误原因。
message String 模块错误信息描述,与接口相关。
data Array 包含成功创建的伸缩策略列表信息。

其中,data参数的构成如下,只有一个元素scalingPolicyIdSet。

参数名称 类型 描述
scalingPolicyIdSet Array 包含创建的各个伸缩策略的Id。

4. 错误码

以下错误码表仅列出了该接口的业务逻辑错误码,更多公共错误码详见AS错误码

错误码 描述
NameDuplicate.ScalingPolicy 伸缩策略名称已存在
QuotaExceeded.ScalingPolicy 伸缩策略添加超过上限
InvalidParameter.Metric METRIC配置不正确
InvalidParameter.ScalingPolicyAdjustmenttypeError 伸缩动作类型不正确
InvalidParameter.ScalingPolicyNameError 伸缩策略名称错误
InvalidParameter.AdjustmentValue 伸缩策略adjustmentValue超出范围

5. 示例

https://scaling.api.qcloud.com/v2/index.php?
&<公共请求参数>
&scalingGroupId=xxxx
&scalingPolicyName=xxxx
&adjustmentType=QuantityChangeInCapacity
&adjustmentValue=10
&cooldown=300
&metric={"dimensionName":"cpu_usage","comparisonOperator":"EqualOrGreater","threshold":50}
&notifyIds.0=1832
&notifyIds.1=1833

返回示例如下:

{
    "code":"0",
    "message":"",
    "codeDesc":"Success",        
    "data":{
        "scalingPolicyIdSet":[
            "sp-170oxpxp"
        ]
    }
}