更新策略
功能介绍
该接口用于修改策略规则
-
告警策略支持更新,定时和周期策略不支持更新。
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 被请求的服务无效。建议直接修改该请求,不要重试该请求。 |
错误码
请参见错误码。