多通道告警服务
graph TD
A[Api Request ..]
B[Dispatch ,.]
D[Channel .]
E[Dao .]
U[User .]
A --> B
B --> D
B --> E
B --> U
sequenceDiagram
participant A as Client App
participant Api as Api
participant Ds as Dispatch
participant Dao as Dao
participant C as Channel
participant User as User
A->>Api: 发送告警数据:接收者/内容/级别/状态/指定通道等
Api->>Ds: 数据传入调度器
Ds->>Dao: 记录一次告警事件
Ds->>Ds: 把告警事件接收者和通道拆分告警任务
Ds->>Dao: 记录告警任务
loop 发送所有告警任务
activate User
Ds->>User:传入用户名
User-->>Ds:根据发送通道需要获取用户手机号或邮件
deactivate User
activate C
Ds->>C:执行告警任务
C-->>Ds:返回发送结果
deactivate C
Ds->>Dao:记录告警任务执行状态
end
Ds->>Ds: 检查告警事件下所有告警任务的发送情况
Ds->>Dao: 记录告警事件的发送结果
Ds-->>Api: 返回告警事件发送结果
Api-->>A: 返回告警事件发送结果
Last updated
Was this helpful?