> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flashcat.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# 分派策略

> 配置告警分派规则，确保故障及时通知到正确的人员

分派策略决定了故障发生时，系统 **在什么时间**、**通过什么渠道**、**通知给谁**、**超时如何升级**。通过单聊、群聊和多级升级等机制，确保重要故障一定有人响应。

## 配置要素

一条分派策略包含六个核心要素，系统按从上到下的顺序匹配策略，**匹配成功后停止匹配后续策略**。

您可以对每条分派策略进行启用或禁用操作。禁用的策略在匹配时会被跳过，不会触发通知。此外，您还可以将分派策略复制到当前协作空间或其他协作空间，快速复用已有配置。

### 1. 触发条件

决定了哪些故障会触发当前策略。

**生效时间**：控制策略在何时参与匹配。

* **关闭（默认）**：7x24 小时全天候生效
* **开启**：仅在指定时间范围内参与匹配，超出时间的故障将跳过该策略。支持两种方式：
  * **特定时间段**：如仅工作日（周一至周五 9:00-18:00）生效
  * **服务日历**：引用预定义的 [服务日历](/zh/on-call/configuration/service-calendar)，如仅「交易日」生效，自动排除节假日

**故障筛选**：控制策略匹配哪些故障。

* **关闭（默认）**：所有故障均可能命中该策略
* **开启**：根据故障属性精准过滤，支持按 **标题**、**级别**（如仅 Critical）、**标签**（如 `service=payment`）等条件匹配

<Frame caption="分派策略触发条件配置">
  ![触发条件配置](https://docs-cdn.flashcat.cloud/images/png/47b05ed667e69087af793fe0cb23c0b6.png)
</Frame>

### 2. 通知对象

决定了通知发送给谁。

| 对象类型        | 说明            |
| :---------- | :------------ |
| **值班表（推荐）** | 分派给当前正在值班的人员  |
| **团队**      | 分派给整个团队的所有成员  |
| **个人**      | 固定分派给特定人员     |
| **组合模式**    | 您可以同时选择上述多种对象 |

<Tip>
  如需根据告警内容动态路由到负责人（如根据 `owner` 标签自动分派），请参考 [动态分派](/zh/on-call/advanced/dynamic-notifications)。
</Tip>

### 3. 通知方式

决定了通过什么方式触达用户。

<Tabs>
  <Tab title="单聊（触达个人）">
    点对点发送给具体的分派对象，支持电话、短信、邮件、App 推送、IM 私聊（飞书/钉钉/企微）。

    * **遵循个人偏好（推荐）**：通知方式由成员在 [个人中心](/zh/on-call/configuration/personal-settings) 自行配置
    * **遵循统一设置**：强制规定通知方式（如必须发送短信），覆盖成员的个人偏好
  </Tab>

  <Tab title="群聊（触达群组）">
    发送到即时通讯软件的群组中，支持 @ 提到相关人员。

    * **IM 应用群**：支持飞书、钉钉、企业微信、Slack、Microsoft Teams 群，需先完成 [IM 集成](/zh/on-call/integration/instant-messaging/lark)
    * **群机器人**：支持飞书、钉钉、企业微信、Telegram、Zoom 等 Webhook 机器人。其中 Telegram 需要配置 Webhook 通知地址和群聊 ID（Chat Ids），Zoom 需要配置 Webhook 地址和 Verify Token，并支持开启 @ 提醒功能。详见 [通知渠道配置](/zh/on-call/configuration/notifications)

    <Note>
      **不使用上述 IM 平台？** 您可以选择任意一种机器人类型，将 Webhook 地址填写为您自己的服务端 URL（系统不会校验域名），然后在服务端实现对应的消息协议即可。详见[常见问题](/zh/on-call/quickstart/faq#我没有飞书钉钉企微telegram如何接收机器人通知)。
    </Note>
  </Tab>
</Tabs>

### 4. 延迟窗口

在发送首次通知前预留一段等待时间，用于过滤瞬时抖动带来的故障。

* 取值范围：0 – 3600 秒，默认 `0`（关闭，立即通知）
* 在延迟等待期内，如果故障 **自动关闭** 或被 **手动关闭**，系统将不再发送通知

<Tip>
  对于容易自愈的监控项（如瞬时抖动、短暂的网络超时），适当设置延迟窗口可以显著降低无效打扰。
</Tip>

### 5. 通知模板

每条分派策略 **必须** 选择一个通知模板，决定发送到各渠道的消息格式。

* 模板需预先在 [通知模板](/zh/on-call/configuration/templates) 中创建并启用
* 支持为不同分派策略选择不同模板，实现针对性的消息格式化

### 6. 升级规则

这是确保故障闭环的关键机制。当第一层级的处理人没有响应或处理完成时，系统会自动升级到下一层级。

**重复通知**：

在每个分派环节中，你可以开启 **重复通知** 功能。开启后，如果故障在当前环节未被处理完成，系统将按照设定的间隔时间（最小 0.5 分钟，步长 0.5 分钟）重复发送通知，最多重复通知指定的次数。

**升级条件**：

* **未关闭**：故障触发后 N 分钟未关闭
* **未关闭且未认领**：故障触发后 N 分钟既未关闭也未被认领

超时时长最小为 1 分钟。

**典型场景**：

| 场景      | 升级路径                              |
| :------ | :-------------------------------- |
| 一线 → 二线 | 一线值班（SRE）15 分钟未响应 → 升级给二线研发专家     |
| 主备升级    | 主值班人 10 分钟未响应 → 升级给备值班人           |
| 层层上报    | 技术人员 30 分钟未解决 → 升级给技术主管 → 升级给 CTO |

**环节管理**：

* **默认首环节**：新建策略时自动生成第一环节，默认 **30 分钟超时** 触发升级、**不重复通知**、通知方式 **遵循个人偏好**
* **增删环节**：支持任意添加或删除环节；策略至少保留 1 个环节
* **调整顺序**：支持将环节上移、下移，或在任意两个环节之间插入新的环节

## 最佳实践

<AccordionGroup>
  <Accordion title="兜底策略" icon="shield">
    建议在列表底部保留一条 **无过滤条件** 的默认策略，分派给 SRE 团队或管理员，防止因过滤规则配置失误导致故障漏单。
  </Accordion>

  <Accordion title="避免过度打扰" icon="bell-slash">
    * 对于 `Info` / `Warning` 级别的低优告警，建议仅发送 IM 消息，不使用电话或短信
    * 使用 **重复通知** 功能时需谨慎，避免产生告警轰炸
  </Accordion>

  <Accordion title="合理拆分空间" icon="layer-group">
    不要试图用一个协作空间管理全公司的所有告警。按功能模块或团队拆分空间，每个空间维护独立且简单的分派策略，是降低维护成本的关键。
  </Accordion>
</AccordionGroup>

## 常见问题

<AccordionGroup>
  <Accordion title="有告警产生，但没有收到通知？" icon="circle-question">
    前往 故障详情 → **时间线**，查看各渠道通知状态是否正常。如有失败信息可参考排查，更多问题可联系技术支持。
  </Accordion>

  <Accordion title="通知方式与个人偏好设置不符？" icon="circle-question">
    Flashduty On-call 单聊通知支持两种模式：「遵循个人偏好」和「遵循统一设定」。仅在「遵循个人偏好」模式下，系统才会按照您的个人设置发送通知。

    前往 协作空间详情 → **分派策略** 查看当前设定。
  </Accordion>

  <Accordion title="Webhook 集成和群机器人 Webhook 有什么区别？" icon="circle-question">
    这是两个不同的功能，请勿混淆：

    * **Webhook 集成**（[告警 Webhook](/zh/on-call/integration/webhooks/alert-webhook)、[故障 Webhook](/zh/on-call/integration/webhooks/incident-webhook)）：当告警或故障发生变化时，Flashduty 向您配置的 URL 推送事件数据，用于与外部系统（如工单系统、自动化平台）集成
    * **群机器人 Webhook**（本页「通知方式 → 群聊」）：在分派策略中配置 IM 群机器人的 Webhook 地址，Flashduty 通过该地址向群聊推送故障通知消息

    简言之：Webhook 集成是**数据出站**，群机器人是**通知触达**。
  </Accordion>
</AccordionGroup>

## 延伸阅读

<CardGroup cols={3}>
  <Card title="配置值班表" icon="calendar" href="/zh/on-call/configuration/schedule">
    设置轮班规则，实现自动分派
  </Card>

  <Card title="配置个人偏好" icon="user-gear" href="/zh/on-call/configuration/personal-settings">
    自定义通知时段和渠道
  </Card>

  <Card title="配置通知模板" icon="file-lines" href="/zh/on-call/configuration/templates">
    自定义通知内容格式
  </Card>
</CardGroup>
