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

# 值班与升级

> 用轮值和临时替班搭建值班排班，并用升级策略通知合适的人，无人响应时继续向后通知。

升级策略决定一个事件通知谁、按什么顺序通知。它的每一级可以指定人员、团队或值班排班，这样通知会跟随轮值，而不是固定到某个人。打开 **告警 → 值班排班** 和 **告警 → 升级**。读取它们需要 `schedules.read` 和 `alerts.read`；修改排班需要 `schedules.manage`，修改升级策略需要 `alerts.manage`。

## 通知如何送达

1. 规则触发并开启事件，事件使用规则的升级策略。
2. 策略的第 1 级开始执行：每个目标收到一个通知事件。用户目标就是这个人，排班目标是此刻的值班人，团队目标面向整个团队。
3. [通知策略](https://docs.molesignal.com/zh-Hans/notification-channels#创建模板和策略)把每个通知事件转成投递：连接器、每个人的个人顺序，以及兜底路由。
4. 在该级的 **确认超时** 内无人确认时，执行下一级，直到事件被确认或解决，或所有级别执行完毕。

命中事件的静默在生效期间会停止升级。有多个 `alert` 节点时，每条规则归属一个节点，该节点也负责升级这条规则的事件。参见[分角色部署](https://docs.molesignal.com/zh-Hans/deployment/role-based.md#alert-节点之间的分工)。

## 值班排班

**值班排班** 列出各个排班的时区、轮值、人数、当前值班人、下次切换和状态。页面顶部汇总排班数、当前值班人数、本周轮换次数和临时替班。可以按排班、团队、负责人、时区或状态筛选，或只看 **仅看我参与的排班**。

| 状态 | 含义 |
| - | - |
| **进行中** | 有人在值班。 |
| **即将切换** | 下次交接在 2 小时以内。 |
| **未开始** | 第一个轮值还没开始。 |
| **已暂停** | 排班已暂停，不会让任何人值班。 |
| **存在空班** | 当前无人值班。 |

### 创建排班

1. 点击 **新建排班**。

2. 在 **基本信息** 中填写 **排班名称**、**说明**、**时区**（例如 `Asia/Shanghai`）和 **关联团队**。

3. 在 **轮值规则** 中设置每个轮值：

   | 字段 | 用途 |
   | - | - |
   | 轮值名称 | 例如 `primary`。 |
   | **轮换方式** | **每日**、**每周**、**工作日**（每日轮换，周一到周五）或 **自定义周期**（填写 **周期（小时）**）。 |
   | **开始日期与时间**、**交接时间** | 轮值何时开始，以及每天几点交接。 |
   | **轮值成员（按顺序轮换）** | 参与轮换的人员及其顺序。 |
   | **限定具体日期 / 时段** | 只覆盖部分星期几，以及 **起始小时** 到 **结束小时** 之间的时段，按排班时区计算。 |

4. 检查 **未来 7 天预览**，确认轮值顺序、交接时间和覆盖人员。

5. 点击 **创建排班**，或点击 **保存草稿** 以暂停状态保存。

多个轮值覆盖同一时刻时，列表中第一个有人值班的轮值生效。例如可以在第一个轮值下方再加一个夜间或周末轮值。

### 临时替班

临时替班在固定时段内把值班交给某一个人，用于请假、换班或故障处理。在排班上点击 **添加替班**，选择 **替班人**，填写 **原因**、**开始时间** 和 **结束时间** 后保存。替班生效期间优先于所有轮值。

同一排班的两个替班不能重叠。替班人在开始时已参与其他排班，或开始时间已经过去（保存后立即生效）时，表单会给出提示。**结束替班** 可以提前结束正在生效的替班。

### 排班详情与操作

打开排班即可看到当前值班人及其开始时间、下次轮换、轮值规则、临时替班、**未来 7 天时间线**，以及排班的 **变更记录**。排班菜单提供：

| 操作 | 效果 |
| - | - |
| **编辑排班** | 修改排班及其轮值。 |
| **添加临时替班** | 添加一个替班。 |
| **暂停排班** / **恢复排班** | 暂停的排班不会让任何人值班，指向它的升级级别也就通知不到人。 |
| **复制排班** | 创建一个名为 `<名称> 副本` 的副本。 |
| **导出日历** | 把班次下载为 `.ics` 文件，导入日历。 |
| **删除排班** | 删除排班。 |

[首页](https://docs.molesignal.com/zh-Hans/home.md)显示当前班次，成员可以在[账号设置](https://docs.molesignal.com/zh-Hans/account.md#通知设置)中选择值班通知的送达方式。

## 升级策略

**升级** 列出各策略通知谁、何时通知。

1. 点击 **新建策略** 并填写 **策略名称**。
2. 为每一级选择 **生效起始严重度**（**任意严重度** 或某个最低严重度）、**确认超时**（1、5、10、15 或 30 分钟，或 1 小时）和 **目标**：**用户**、**排班** 或 **团队**。**添加级别** 可以增加下一级。
3. 可以开启 **循环整个策略直到被确认**，并设置 **最大循环次数**。
4. 点击 **创建策略**。

最低严重度高于事件严重度的级别会被跳过。每次投递使用的连接器和兜底路由在 **设置 → 通知 → 通知策略** 中设置，而不是在升级策略中设置。

### 默认策略

规则通过 `escalation_policy_id` 指定升级策略。没有指定的规则（在规则工作台中保存的规则都是如此）使用别名 `default`：组织中名为 `default` 的策略，不区分大小写。没有这条策略时，这些规则的事件不会升级给任何人。

请在创建第一条规则之前创建名为 `default` 的策略，例如第 1 级通知主值班排班，第 2 级通知团队负责人。事件一旦开始升级，就会一直使用它找到的那条策略，即使之后 `default` 策略被改名。

## API

| 操作 | 端点 |
| - | - |
| 创建升级策略 | [`POST /api/v1/alerts/escalations`](https://docs.molesignal.com/zh-Hans/api/alerting/create-escalation) |
| 为规则指定策略 | [创建规则](https://docs.molesignal.com/zh-Hans/api/alerting/create-rule.md)中的 `escalation_policy_id` |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.