更新策略
功能介绍
该接口用于修改策略规则
-
告警策略支持更新,定时和周期策略不支持更新。
URI
PUT /v1/{project_id}/pe/policy/{policy_id}
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 项目ID |
| policy_id | 是 | String | 策略ID |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| Content-Type | 是 | String | 内容类型 该字段内容填为“application/json;charset=utf-8” 枚举值:
|
| Cluster-Id | 是 | String | 集群ID |
| Namespace | 是 | String | 命名空间 |
| Deployment-Name | 是 | String | 应用名 |
| X-Auth-Token | 是 | String | 从IAM获取的用户Project级别Token。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 是 | String | 策略ID |
| name | 是 | String | 策略名称(不支持修改) 策略名称必须为以0~9、a~z、A~Z、下划线(_)或中划线(-)组成的1~64位字符串,且必须以字母开头。 |
| policy_type | 是 | String | 策略类型(当前只支持告警策略) 枚举值:
|
| rule | 是 | AlarmRule object | 触发策略的规则 |
| group_id | 是 | String | 策略组id |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| actions | 是 | Array of Action objects | 指定策略匹配成功后执行的动作。 |
| conditions | 是 | Array of AlarmConditions objects | 匹配条件内容。一个规则可以有多个条件,多个条件之间的关系是“并且”,内部描述了多个详细匹配条件。一个条件可以描述一个metric的匹配方式。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String |
枚举值:
|
| parameters | 是 | Array of Parameter objects | 包含扩缩容的实例数。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| metric_namespace | 是 | String | 指标命名空间 枚举值:
|
| metric_name | 是 | String | 指标名称 枚举值:
|
| metric_unit | 是 | String | 单位 说明 随指标名称变化而变化,具体信息从AMS接口获取 |
| period | 是 | Integer | 统计周期,单位:秒 枚举值:
|
| evaluation_periods | 是 | Integer | 连续周期数 枚举值:
|
| statistic | 是 | String | 统计方式 枚举值:
|
| metric_operation | 是 | String | 指标操作符 包含“>”、“<”。 例如,“>”表示当metric大于metric_thresholdUpdate值时触发actions 枚举值:
|
| metric_threshold | 是 | Integer | 阈值条件 |
响应参数
状态码: 200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| errorCode | String | 错误码 |
| errorMessage | String | 详细信息 |
| context | PePolicyContext object | 修改后策略的详细信息 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 策略ID |
| name | String | 策略名称(不支持修改) 策略名称必须为以0~9、a~z、A~Z、下划线(_)或中划线(-)组成的1~64位字符串,且必须以字母开头。 |
| policy_type | String | 策略类型(当前只支持告警策略) 枚举值:
|
| rule | AlarmRule object | 触发策略的规则 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| actions | Array of Action objects | 指定策略匹配成功后执行的动作。 |
| conditions | Array of AlarmConditions objects | 匹配条件内容。一个规则可以有多个条件,多个条件之间的关系是“并且”,内部描述了多个详细匹配条件。一个条件可以描述一个metric的匹配方式。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String |
枚举值:
|
| parameters | Array of Parameter objects | 包含扩缩容的实例数。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| metric_namespace | String | 指标命名空间 枚举值:
|
| metric_name | String | 指标名称 枚举值:
|
| metric_unit | String | 单位 说明 随指标名称变化而变化,具体信息从AMS接口获取 |
| period | Integer | 统计周期,单位:秒 枚举值:
|
| evaluation_periods | Integer | 连续周期数 枚举值:
|
| statistic | String | 统计方式 枚举值:
|
| metric_operation | String | 指标操作符 包含“>”、“<”。 例如,“>”表示当metric大于metric_thresholdUpdate值时触发actions 枚举值:
|
| metric_threshold | Integer | 阈值条件 |
请求示例
修改告警策略示例
PUT https://{Endpoint}/v1/{project_id}/pe/policy/{policy_id}
{
"group_id" : "943eba0f-b10a-4066-6261-1857a53500ff",
"id" : "5c2eecea-32ac-42c0-be30-f73b15d68429",
"name" : "policy_1",
"policy_type" : "ALARM",
"rule" : {
"conditions" : [ {
"metric_namespace" : "PAAS.CONTAINER",
"metric_name" : "cpuUsage",
"metric_unit" : "Percent",
"period" : 60,
"evaluation_periods" : 1,
"statistic" : "average",
"metric_operation" : ">",
"metric_threshold" : 70
} ],
"actions" : [ {
"type" : "scale_out_k8s",
"parameters" : {
"scale_unit" : 1
}
} ]
}
} 响应示例
状态码: 200
OK
请求执行完成。
{
"errorCode" : "SVCSTG.PE.0",
"errorMessage" : "",
"context" : {
"id" : "5c2eecea-32ac-42c0-be30-f73b15d68429",
"name" : "policy_1",
"policy_type" : "ALARM",
"rule" : {
"conditions" : [ {
"metric_namespace" : "PAAS.CONTAINER",
"metric_name" : "cpuUsage",
"metric_unit" : "Percent",
"period" : 60,
"evaluation_periods" : 1,
"statistic" : "average",
"metric_operation" : ">",
"metric_threshold" : 70
} ],
"actions" : [ {
"type" : "scale_out_k8s",
"parameters" : {
"scale_unit" : 1
}
} ]
}
}
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | OK 请求执行完成。 |
| 400 | BadRequest 非法请求。建议直接修改该请求,不要重试该请求。 |
| 401 | Unauthorized 在客户端提供认证信息后,返回该状态码,表明服务端指出客户端所提供的认证信息不正确或非法。 |
| 403 | Forbidden 请求被拒绝访问。返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 |
| 500 | InternalServerError 表明服务端能被请求访问到,但是不能理解用户的请求。 |
| 503 | ServiceUnavailable 被请求的服务无效。建议直接修改该请求,不要重试该请求。 |
错误码
请参见错误码。