# 创建流转规则
企业IT架构日趋复杂，服务器、网络设备、云服务等多种来源的告警信息格式不一、标准杂乱。这些原始告警直接进入运维流程，容易造成信息冗余、关键问题被掩盖，还会导致处理标准不统一，影响故障响应和团队协作效率。
而在云运维中心（COC）的标准化运维体系里，需要把各类告警转化为能按统一流程处理的对象，实现准确通知、快速响应，同时支持配置响应预案以实现故障自愈。为此，流转规则连接不同来源的告警和标准化处理流程，助力提升运维效率与自动化水平。
#### 什么是流转规则
流转规则将所有接收的集成原始告警进行抑制、降噪、去重、路由分派操作，支持多监控源纵向抑制、横向收敛，进行多维降噪。
该规则可将一条或多条格式杂乱的原始告警汇聚为单条汇聚告警，同时支持单条原始告警触发多个流转规则，流转规则的具体配置项功能说明请参考[表2]。
#### 前提条件
- 配置流转规则前，您需要确保[集成管理](https://support.huaweicloud.com/usermanual-coc/coc_um_06_05_02.html)配置流转规则的监控源已成功接入集成。
 
- 已开通"故障管理"套餐，具体计费情况请参考[计费说明](https://support.huaweicloud.com/price-coc/coc_pro_07_03.html)。
#### 约束与限制
- 流转规则生成事件后，在事件未走到"已完成"或"已关闭"状态前，若再次满足流转规则不再会产生事件（该规则是默认启用的，支持关闭该规则）。
- 流转规则生成汇聚告警，在窗口期内若没有收到原始告警，系统会将之前窗口期内的告警作为历史告警（即当前告警状态默认设置为"已解决"）。
  图1流转规则转事件/告警示意图   
  ![](https://support.huaweicloud.com/usermanual-coc/zh-cn_image_0000002780866325.png "点击放大") 
 
 #### 创建流转规则
1. 登录[云运维中心](https://console.huaweicloud.com/coc/?#/console/home)。
2. 在左侧导航栏选择"故障管理 \> 流转规则"，进入流转规则页面。
3. 在流转规则页面，单击右上方"创建规则"，进入创建流转规则页面。
4. 在创建流转规则页面，参考[表1]设置流转规则的基本信息。
   
    表1基本信息参数说明 
   | **参数** | **说明**                                                                 |
   |:---|:---|
   | 规则名称 | 自定义流转规则的名称。                                                            |
   | 区域  | 可选参数，在下拉列表选择区域。 不选择区域展示"默认"，表示不涉及区域。 |
   | 企业项目  | 在下拉列表选择企业项目。                                                           |
   | 应用   | 在下拉列表选择应用。                                                             |
      
   
   
5. 在创建流转规则页面，参考[表2]设置流转规则触发条件。
   
    表2触发规则参数说明 
   | **参数** | **说明**                                                                                                                                                                                                                                                   |
   |:---|:---|
   | 触发类型      | 可选项"事件"、"告警"。 - 事件：生成事件单，需要值班人员尽快处理，持续跟进直至闭环。  - 告警：生成告警管理，支持基于响应预案手动或自动化快速闭环。   |
   | 数据源      | 请选择数据源。 数据源是原始告警产生的来源。 配置规则前请确保数据已接入并启用，当满足所有条件时，运行流转规则。数据源设置请参考[接入监控系统](https://support.huaweicloud.com/usermanual-coc/coc_um_06_05_02.html)。                                      |
   | 触发条件      | 选择触发条件的key、比较方式、value。 支持添加触发条件，最多支持5个触发条件。key的详细说明请参考[表3 触发条件key参数说明表]。                                                                                                          |
   | 触发规则      | 请选择触发规则。                                                                                                                                                                                                                                                 |
   | 事件级别    | 仅触发类型选择事件时需要选择。可选项"P1"、"P2"、"P3"、"P4"、"P5"。 默认严重程度"P1"最严重，"P5"最轻微。                                                                                                                                                   |
   | 沉默规则     | 仅触发类型选择事件时需要选择。选择"启用"、"禁用"沉默规则。 此流转规则生成事件后，在事件未走到"已完成"或"客户已关闭"状态前，若又满足触发规则不再生成新的事件。                                                                                                                                     |
   | 告警级别    | 仅触发类型选择告警时需要选择。可选项"紧急"、"重要"、"次要"、"提示"。                                                                                                                                                                                                                |
      
    表3触发条件key参数说明表 
   | **key参数**    | **描述**                        | **对应CES告警字段**                                                                                                                       | **对应AOM告警字段**                                                                                                       |
   |:---|:---|:---|:---|
   | alarmId       | 告警ID                          | alarm_id                                                                                                                            | id                                                                                                                   |
   | alarmName     | 告警名称                          | alarm_name                                                                                                                        | metadata中的event_name                                                                                                |
   | alarmLevel     | 告警级别，取值有：紧急、重要、次要、提示           | AlarmLevel                                                                                                                         | event_severity                                                                                                    |
   | time          | 告警发生时间                        | time                                                                                                                                | starts_at                                                                                                         |
   | nameSpace    | 服务的命名空间                        | namespace                                                                                                                         | namespace                                                                                                          |
   | region       | Region                         | template_variable中的Region                                                                                                            | /                                                                                                                   |
   | application   | 应用名                             | /                                                                                                                                    | /                                                                                                                 |
   | resourceName    | 资源名称                            | template_variable中ResourceName                                                                                                     | metadata中的resource_id                                                                                             |
   | resourceId   | 资源ID                           | template_variable中的ResourceId                                                                                                       | /                                                                                                                |
   | alarmDesc    | 告警描述                          | template_variable中的AlarmDesc                                                                                                        | /                                                                                                                 |
   | URL          | 原始告警URL                        | template_variable中的Link                                                                                                          | /                                                                                                                 |
   | alarmStatus | 告警状态。一般取值为alarm（告警中）和ok（已恢复） | alarm_status                                                                                                                       | /                                                                                                                  |
   | alarmSource   | 告警源名称，如从CES上报的告警，该字段的值显示CES  | /                                                                                                                                 | /                                                                                                                   |
   | additional    | 告警附加信息，格式为additional.xxx       | 除以上的参数，其他参数均放在该参数中，使用additional.xxx表示，CES相关字段描述单击[这里](https://support.huaweicloud.com/usermanual-ces/zh-cn_topic_0084572213.html)查看 | 除以上的参数，其他参数均放在该参数中，使用additional.xxx表示，AOM相关字段描述单击[这里](https://support.huaweicloud.com/api-aom/PushEvents.html)查看 |
   | recTime         | COC接收到的告警时间，格式为13位时间戳         | /                                                                                                                                 | /                                                                                                                   |
      
   
   
6. 参考[表4]设置触发流转规则后执行的响应预案。
   
    表4响应预案参数说明 
   | **参数** | **说明**                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   |:---|:---|
   | 任务类型    | 可选项"应急预案"、"脚本"、"作业"。                                                                                                                                                                                                                                                                                                                                                                                                                         |
   | 自动执行   | 勾选是否自动执行。自动化预案、脚本、作业支持自动执行。 - 勾选"自动执行"后，显示"参数映射"，系统根据上方的触发条件及设置自动执行。 参数值、Region ID和目标实例填写格式为${}，需要通过该表达式解析对应的值，详细请参考[自动化执行参数示例说明]。   - 不勾选"自动执行"，单击左侧链接手动执行任务。   |
      
   
   
7. 设置流转后分派的责任人。 
   表5分派规则参数说明 
   | **参数** | **说明**                                                                                                                                                                                                                                                                                                                                                                           |
   |:---|:---|
   | 责任人    | 可选项"排班"、"个人"。 - 排班：按照已配置的排班场景和角色在下拉列表选择。配置排班详细操作请参考[排班管理](https://support.huaweicloud.com/usermanual-coc/coc_um_09_02.html)。  - 个人：选择责任用户。配置责任用户详细操作请参考[人员管理](https://support.huaweicloud.com/usermanual-coc/coc_um_09_01.html)。   |
      
   
   
8. 单击"确定"，完成流转规则创建。 
   创建成功后，可在流转规则列表中查看已创建的规则。当对接入的数据源配置相应规则，将自动流转为告警或事件，同时支持自动处理。
   
   
 
 #### 自动化执行参数示例说明
参数值、Region ID和目标实例填写格式为${}，需要通过该表达式解析对应的值。
参考示例：
告警信息如下：
```
{
"alarmId": "al1696664837170EWbvx24kW",
"alarmName": "alarm-4z39coctest1007",
......
"URL": "https://console.***.com/ces/?region=***#/alarms/detail?alarmId=al16849986549022X5Vp4pxr",
"additional": {
"dimension": "instance_id:29d99a09-2d15-4ced-8723-6e94ae1c1472",
......
},
......
}
```
- **如果要获取当前告警信息里面的alarmId的值，表达式写成如下形式** ：
  ```
  ${currentAlarm.alarmId}
  ```
  
- **如果要从additional.dimension字符串里面获取instance_id的uuid，表达式写成如下形式：**
  ```
  ${string.substring(currentAlarm.additional.dimension, string.indexOf(currentAlarm.additional.dimension, 'instance_id:') + 12)}
  ```
  或者
  ```
  ${string.substring(currentAlarm.additional.dimension, 12)}
  ```
  
- **如果要从URL字符串里面获取cn-north-7这个region ID，表达式写成如下形式：**
  ```
  ${string.substring(currentAlarm.URL, string.indexOf(currentAlarm.URL, 'region=') + 7, string.indexOf(currentAlarm.URL, '#/alarms'))}
  ```
  表达式里面的currentAlarm.是个固定前缀，意思是从当前告警的数据里面获取。
  
 
#### 更多相关操作
流转规则创建后，您还可以进行禁用、启用、修改、复制或删除流转规则操作。
表6相关操作 
| 功能   | 场景                                                               | 操作说明                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|
| 禁用规则 | 禁用后，收到的源数据不会触发规则。                                              | 1. 在流转规则列表中，选择需要禁用的规则，单击操作列"禁用"。  2. 在弹框中单击"确定"，完成流转规则禁用。                                                                                                                                                         |
| 启用规则   | 启用后，收到的源数据将会触发规则。                                                | 1. 在流转规则列表中，选择需要启用的规则，单击操作列"启用"。  2. 在弹框中单击"确定"，完成流转规则启用。                                                                                                                                                         |
| 修改规则 | 流转规则创建后如业务需求变更，支持修改操作。                                           | 1. 在流转规则列表中，选择需要修改的规则，单击操作列"更多 \> 修改"。  2. 根据业务变更修改参数，参数信息请参考[创建流转规则]。  3. 设置完成后，单击"确定"，完成流转规则修改。   |
| 复制规则  | 通过复制规则，快速创建适配新业务规则，大幅缩短规则配置周期。                                    | 1. 在流转规则列表中，选择需要复制的规则，单击操作列"复制"。  2. （可选）根据需求调整参数，参数信息请参考[创建流转规则]。  3. 单击"确定"，完成流转规则复制。           |
| 删除规则   | 流转规则如不再需要，支持删除操作。 删除后无法恢复，请谨慎操作。 | 1. 在流转规则列表中，选择需要删除的规则，单击操作列"更多 \> 删除"。  2. 在弹框中单击"确定"，完成流转规则删除。                                                                                                                                                  |
   
