
# 创建告警规则（V1） - CreateAlarm
#### 功能介绍
创建一条告警规则。创建告警规则V1接口只支持配置单资源单策略规则，建议使用"[创建告警规则（推荐）](https://support.huaweicloud.com/api-ces/CreateAlarmRules.html)"与前端功能配套使用。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CES/doc?api=CreateAlarm&version=v1)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ces/ces_03_0045.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项               | 访问级别  | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | ces:alarms:create | Write | -           | - g:EnterpriseProjectId   - g:RequestTag/\<tag-key\>   - g:TagKeys   - ces:namespace    | -  | -      |
     
  
 
#### URI
POST /V1.0/{project_id}/alarms
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释**: 项目ID。用于明确项目归属，配置后可通过该ID查询项目下资产，可以通过调用API获取，也可以从控制台获取。获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-ces/ces_03_0057.html)。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,64\]个字符。 **默认取值**: 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|:---|
| Content-Type | 否    | String | **参数解释**: 发送的实体的MIME类型。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,64\]个字符。 **默认取值**: 默认使用 application/json; charset=UTF-8，如果API是对象、镜像上传等接口，媒体类型可按照流类型的不同进行确定。 |
| X-Auth-Token | 否    | String | **参数解释**: 用户Token。 **约束限制**: 不涉及。 **取值范围**: 长度为\[1,16384\]个字符。 **默认取值**: 不涉及。                                                                       |
   
表3请求Body参数 
| 参数                       | 是否必选 | 参数类型                                                                                             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|:---|
| alarm_name               | 是    | String                                                                                           | **参数解释**： 告警名称。 **约束限制**： 不涉及。 **取值范围**： 只能包含0-9/a-z/A-Z/_/-或汉字，长度1-128。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| alarm_description        | 否    | String                                                                                           | **参数解释**： 告警描述。 **约束限制**： 不涉及。 **取值范围**： 长度\[0,256\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| metric                   | 是    | [CreateAlarmMetric] object | **参数解释**： 创建规则中的监控指标信息。 **约束限制**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| condition                | 是    | [Condition] object                 | **参数解释**： 告警规则设置的告警策略。 **约束限制**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| alarm_enabled            | 否    | Boolean                                                                                          | **参数解释**： 是否启用该条告警。 **约束限制**： 不涉及。 **取值范围**： 布尔值。 - true：开启告警。   - false：不开启告警。    **默认取值**： true                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| alarm_action_enabled     | 否    | Boolean                                                                                          | **参数解释**： 该条告警触发时，是否启用告警通知。 **约束限制**： 不填默认为true，对应的alarm_actions、ok_actions至少有一个不能为空。若alarm_actions、ok_actions同时存在时，alarm_actions和ok_actions中的notification_list值保持一致。 **取值范围**： 布尔值。 - true：开启告警通知。   - false：不开启告警通知。    **默认取值**： true                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| alarm_level              | 否    | Integer                                                                                          | **参数解释**： 告警级别。 **约束限制**： 不涉及。 **取值范围**： 只能为1、2、3、4。分别对应紧急、重要、次要、提示。 **默认取值**： 2                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| alarm_type               | 否    | String                                                                                           | **参数解释**： 告警类型。 **约束限制**： 针对事件类型的告警时，告警类型为EVENT.SYS（系统事件）或EVENT.CUSTOM（自定义事件）。 针对资源分组的告警时，告警类型为RESOURCE_GROUP。 针对指定资源的告警时，告警类型为MULTI_INSTANCE。 **取值范围**： - EVENT.SYS：针对系统事件的告警规则。   - EVENT.CUSTOM：针对自定义事件的告警规则。   - RESOURCE_GROUP：针对资源分组的告警规则。   - MULTI_INSTANCE： 针对指定资源的告警规则。    **默认取值**： 不涉及。 |
| alarm_actions            | 否    | Array of [Notification] objects | **参数解释**： 告警触发时，通知组/主题订阅的信息。结构样例如下： { "type": "notification","notificationList":\["urn:smn:southchina:68438a86d98e427e907e0097b7e35d47:sd"\] } **约束限制**： 最多包含10个告警触发时的通知对象信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| insufficientdata_actions | 否    | Array of [Notification] objects | **参数解释**： 数据不足触发告警时，通知组/主题订阅的信息。（该参数已废弃，建议无需配置） **约束限制**： 最多包含10个告警动作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ok_actions               | 否    | Array of [Notification] objects | **参数解释**： 告警恢复时，通知组/主题订阅的信息。结构样例如下： { "type": "notification","notificationList":\["urn:smn:southchina:68438a86d98e427e907e0097b7e35d47:sd"\] } **约束限制**： 最多包含10个告警触发时的通知对象信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| enterprise_project_id    | 否    | String                                                                                           | **参数解释**： 企业项目ID。如何查询企业项目ID，请参考[获取项目ID](https://support.huaweicloud.com/api-ces/ces_03_0057.html)。 **约束限制**： 不涉及。 **取值范围**： 长度为0或者32个字符。 **默认取值**： 0，表示默认的企业项目default。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| alarm_action_begin_time  | 否    | String                                                                                           | **参数解释**： 告警通知开启时间。 **约束限制**： 不涉及。 **取值范围**： 只能包含数字、":"，长度为\[1,64\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| alarm_action_end_time    | 否    | String                                                                                           | **参数解释**： 告警通知关闭时间。 **约束限制**： 不涉及。 **取值范围**： 只能包含数字、":"，长度为\[1,64\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表4CreateAlarmMetric 
| 参数                | 是否必选 | 参数类型                                                                                                               | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| namespace         | 是    | String                                                                                                             | **参数解释**： 服务指标命名空间。如：弹性云服务器的命名空间为SYS.ECS，文档数据库的命名空间为SYS.DDS，各服务命名空间请参阅[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)。 **约束限制**： 当alarm_type为（EVENT.SYS\|EVENT.CUSTOM）时允许为空。 **取值范围**： 格式为service.item；service和item必须是字符串，必须以字母开头，只能包含0-9/a-z/A-Z/_，字符总长度最短为3，最大为32。 **默认取值**： 不涉及。 |
| metric_name       | 是    | String                                                                                                             | **参数解释**： 资源的监控指标名称。如：弹性云服务器中的监控指标cpu_util，表示弹性服务器的CPU使用率；文档数据库中的指标mongo001_command_ps，表示command执行频率；各服务资源的指标名称，请参阅具体云服务的文档。您可以直接从[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)页面导航至相应文档。 **约束限制**： 不涉及。 **取值范围**： 必须以字母开头，只能包含0-9/a-z/A-Z/_，长度为\[1,96\]个字符。 **默认取值**： 不涉及。       |
| dimensions        | 否    | Array of [CreateMetricDimension] objects | **参数解释**： 指标维度。 **约束限制**： 目前最大可添加4个维度。如果不使用resource_group_id，则dimensions值必填。                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| resource_group_id | 否    | String                                                                                                             | **参数解释**： 创建告警规则时选择的资源分组ID。 **约束限制**： 如果根据资源分组创建告警规则，则resource_group_id不能为空，dimensions中至少指定一个维度信息，name不能为空，且alarm_type值为RESOURCE_GROUP；如：rg1603786526428bWbVmk4rP。 **取值范围**： 只能包含字母、数字、"_"，"-"，长度为\[0,64\]个字符。 **默认取值**： 不涉及。                                                                             |
   
 表5CreateMetricDimension 
| 参数    | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| name  | 是    | String | **参数解释**： 监控维度名称，如ECS的维度为instance_id。各服务资源的维度名称，请参阅具体云服务的文档。您可以直接从[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)页面导航至相应文档。 **约束限制**： 不涉及。 **取值范围**： 以字母开头，只能包含字母、数字、"_"、"-"。长度\[1,32\]个字符。 **默认取值**： 不涉及。 |
| value | 否    | String | **参数解释**： 必填。监控维度取值，例如ECS的ID。 **约束限制**： 不涉及。 **取值范围**： 长度为\[0,256\]个字符。 **默认取值**： 不涉及。                                                                                                                                           |
   
 表6Condition 
| 参数                  | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| comparison_operator | 是    | String  | **参数解释**： 阈值符号。 **约束限制**： 指标告警可以使用的阈值符号有\>、\>=、\<、\<=、=、!=、cycle_decrease、cycle_increase、cycle_wave； 事件告警可以使用的阈值符号为\>、\>=、\<、\<=、=、!=。 **取值范围**： 支持的值为(\>\|\<\|\>=\|\<=\|=\|!=\|cycle_decrease\|cycle_increase\|cycle_wave);cycle_decrease为环比下降,cycle_increase为环比上升,cycle_wave为环比波动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| count               | 是    | Integer | **参数解释**： 触发告警的连续发生次数。 **约束限制**： 不涉及。 **取值范围**： 整数，取值范围\[1, 5\]。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| filter              | 是    | String  | **参数解释**： 数据聚合的方式。 **约束限制**： period为1（原始值）时，filter字段不生效，参数值默认为average。period大于1时filter才起作用。 **取值范围**： 支持 average、variance、min、max、sum。 - average： 平均值   - variance：方差   - min：最小值   - max：最大值   - sum：求和    **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| period              | 是    | Integer | **参数解释**： 指标周期，单位是秒。如想了解各个云服务的指标原始周期可以参考[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)。 **约束限制**： 不涉及。 **取值范围**： 枚举值。 - 0代表立即触发，仅限事件场景使用。   - 1代表指标的原始周期，比如RDS监控指标原始周期是60s，表示该RDS指标按60s周期为一个数据点参与告警计算。   - 300代表指标按5分钟聚合周期为一个数据点参与告警计算。   - 1200代表指标按20分钟聚合周期为一个数据点参与告警计算。   - 3600代表指标按1小时聚合周期为一个数据点参与告警计算。   - 14400代表指标按4小时聚合周期为一个数据点参与告警计算。   - 86400代表指标按1天聚合周期为一个数据点参与告警计算。   **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| unit                | 否    | String  | **参数解释**： 数据的单位。 **约束限制**： 不涉及。 **取值范围**： 长度为\[0,32\]个字符。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| value               | 是    | Number  | **参数解释**： 告警阈值。具体阈值取值请参见附录中各服务监控指标中取值范围，如[支持监控的服务列表](https://support.huaweicloud.com/api-ces/ces_03_0059.html)中ECS的CPU使用率cpu_util取值范围可配置80。 **约束限制**： 单一阈值时value和alarm_level配对使用，当hierarchical_value和value同时使用时以hierarchical_value为准。 **取值范围**： 最小值为-1.7976931348623157e+108，最大值为1.7976931348623157e+108。 **默认取值**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| suppress_duration   | 否    | Integer | **参数解释**： 告警抑制时间，单位为秒，对应页面上创建告警规则时告警策略最后一个字段，该字段主要为解决告警频繁的问题。 **约束限制**： 不涉及。 **取值范围**： 枚举值，只能为0、300、600、900、1800、3600、10800、21600、43200、86400。 - 0：对于指标类告警，0代表告警一次。对于事件类告警，在立即触发场景中，0代表不抑制；在累计触发场景，0代表只告警一次。   - 300代表满足告警触发条件后每5分钟告警一次。   - 600代表满足告警触发条件后每10分钟告警一次。   - 900代表满足告警触发条件后每15分钟告警一次。   - 1800代表满足告警触发条件后每30分钟告警一次。   - 3600代表满足告警触发条件后每60分钟告警一次。   - 10800代表满足告警触发条件后每3小时告警一次。   - 21600代表满足告警触发条件后每6小时告警一次。   - 43200代表满足告警触发条件后每12小时告警一次。   - 86400代表满足告警触发条件后每一天告警一次。    **默认取值**： 不涉及。 |
   
 表7Notification 
| 参数               | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| type             | 是    | String           | **参数解释**： 告警通知类型。 **约束限制**： 不涉及。 **取值范围**： 取值如下： notification、autoscaling - notification：通知组或主题订阅   - autoscaling：AS通知，只在AS中使用    **默认取值**： 不涉及。 |
| notificationList | 是    | Array of strings | **参数解释**： 告警状态发生变化时，被通知对象的列表。 **约束限制**： 通知对象ID最多可以配置20个。 topicUrn可从SMN获取，具体操作请参考"查询Topic列表"。 说明：若alarm_action_enabled为true，对应的alarm_actions、ok_actions至少有一个不能为空。若alarm_actions、ok_actions同时存在时，notificationList值保持一致。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
#### 响应参数
**状态码：201**
表8响应Body参数 
| 参数       | 参数类型   | 描述                                                                                                                                                                                                                                          |
|:---|:---|:---|
| alarm_id | String | **参数解释**： 告警规则ID。 **取值范围**： 以al开头，后跟22位由字母或数字组成的字符串。长度为24个字符。 |
   
**状态码：400**
表9响应Body参数 
| 参数 | 参数类型   | 描述    |
|:---|:---|:---|
| -  | String | 请求错误。 |
   
**状态码：401**
表10响应Body参数 
| 参数 | 参数类型   | 描述               |
|:---|:---|:---|
| -  | String | 未提供认证信息，或认证信息错误。 |
   
**状态码：403**
表11响应Body参数 
| 参数 | 参数类型   | 描述         |
|:---|:---|:---|
| -  | String | 请求页面被禁止访问。 |
   
**状态码：408**
表12响应Body参数 
| 参数 | 参数类型   | 描述             |
|:---|:---|:---|
| -  | String | 请求超出了服务器的等待时间。 |
   
**状态码：429**
表13响应Body参数 
| 参数 | 参数类型   | 描述    |
|:---|:---|:---|
| -  | String | 请求过多。 |
   
**状态码：500**
表14响应Body参数 
| 参数 | 参数类型   | 描述          |
|:---|:---|:---|
| -  | String | 请求未完成，服务异常。 |
   
**状态码：503**
表15响应Body参数 
| 参数 | 参数类型   | 描述            |
|:---|:---|:---|
| -  | String | 系统暂时不可用，请求受限。 |
   
#### 请求示例
```
{
  "alarm_name" : "alarm-rp0E",
  "alarm_description" : "",
  "metric" : {
    "namespace" : "SYS.ECS",
    "dimensions" : [ {
      "name" : "instance_id",
      "value" : "33328f02-3814-422e-b688-bfdba93d4051"
    } ],
    "metric_name" : "network_outgoing_bytes_rate_inband"
  },
  "condition" : {
    "period" : 300,
    "filter" : "average",
    "comparison_operator" : ">=",
    "value" : 6,
    "unit" : "B/s",
    "count" : 1
  },
  "alarm_enabled" : true,
  "alarm_action_enabled" : true,
  "alarm_level" : 2,
  "alarm_actions" : [ {
    "type" : "notification",
    "notificationList" : [ "urn:smn:southchina:68438a86d98e427e907e0097b7e35d48:sd" ]
  } ],
  "ok_actions" : [ {
    "type" : "notification",
    "notificationList" : [ "urn:smn:southchina:68438a86d98e427e907e0097b7e35d48:sd" ]
  } ],
  "insufficientdata_actions" : [ {
    "type" : "notification",
    "notificationList" : [ "urn:smn:southchina:68438a86d98e427e907e0097b7e35d48:sd" ]
  } ]
}
```
#### 响应示例
**状态码：201**
Created
```
{
  "alarm_id" : "al1604473956229Ym1m1Wx6e"
}
```
#### 状态码
| 状态码 | 描述                    |
|:---|:---|
| 201 | Created               |
| 400 | Bad Request           |
| 401 | Unauthorized          |
| 403 | Forbidden             |
| 408 | Request Timeout       |
| 429 | Too Many Requests     |
| 500 | Internal Server Error |
| 503 | Service Unavailable   |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ces/ErrorCode.html)。
