diff --git a/README.md b/README.md index 07a04c92..8c937658 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,10 @@ date: "2023-12-18T10:00:00+08:00" 请你严格依照 @polish_instructions.md 的要求,对文档 @your_doc_name 进行润色。 ``` +<<<<<<< HEAD +完成润色后,可在 VSCode / Cursor 中打开文档,然后在文档 tab 页中右击,点击 `格式化文档`。 + +======= 完成润色后,可在 VSCode / Cursor 中打开文档,然后在文档 tab 页中右击,点击 `格式化文档`。 - i18n diff --git a/flashduty/en/1. On-call/1. Getting Started/1.3 FAQ.md b/flashduty/en/1. On-call/1. Getting Started/1.3 FAQ.md index bca54715..0813ffdd 100644 --- a/flashduty/en/1. On-call/1. Getting Started/1.3 FAQ.md +++ b/flashduty/en/1. On-call/1. Getting Started/1.3 FAQ.md @@ -204,7 +204,7 @@ Flashduty On-call's pricing model is based on the number of licenses purchased, 卡塔尔 (Qatar) (+974) | 16465861127 俄罗斯/哈萨克斯坦 (Russia/Kazakhstan) | (+7) | 16465861127 沙特阿拉伯 (Saudi Arabia) | (+966) | 16465861127 - 新加坡 (Singapore) | (+65) | 16465861127 + 新加坡 (Singapore) | (+65) | 6531297878 斯里兰卡 (Sri Lanka) | (+94) | 16465861127 中国台湾 (Taiwan) | (+886) | 16465861127 塔吉克斯坦 (Tajikistan) | (+992) | 16465861127 diff --git a/flashduty/en/1. On-call/4. Configure On-call/4.13 Notifications.md b/flashduty/en/1. On-call/4. Configure On-call/4.13 Notifications.md index 08d2267f..0dd62e46 100644 --- a/flashduty/en/1. On-call/4. Configure On-call/4.13 Notifications.md +++ b/flashduty/en/1. On-call/4. Configure On-call/4.13 Notifications.md @@ -220,7 +220,7 @@ The Flashduty App is the most efficient mobile tool for on-call engineers. It al 卡塔尔 (Qatar) (+974) | 16465861127 俄罗斯/哈萨克斯坦 (Russia/Kazakhstan) | (+7) | 16465861127 沙特阿拉伯 (Saudi Arabia) | (+966) | 16465861127 - 新加坡 (Singapore) | (+65) | 16465861127 + 新加坡 (Singapore) | (+65) | 6531297878 斯里兰卡 (Sri Lanka) | (+94) | 16465861127 中国台湾 (Taiwan) | (+886) | 16465861127 塔吉克斯坦 (Tajikistan) | (+992) | 16465861127 diff --git a/flashduty/en/1. On-call/4. Configure On-call/4.7 Templates.md b/flashduty/en/1. On-call/4. Configure On-call/4.7 Templates.md index 5c13ec4d..0fbacb48 100644 --- a/flashduty/en/1. On-call/4. Configure On-call/4.7 Templates.md +++ b/flashduty/en/1. On-call/4. Configure On-call/4.7 Templates.md @@ -1083,80 +1083,319 @@ If no custom content is set, the system default template will be used for notifi - -
-
-
You have a pending incident
-
-
-
-
-
Title
-
{{.Title}}
-
-
-
Severity
-
{{.IncidentSeverity}}
-
-
-
Channel
-
{{if .ChannelName}}{{.ChannelName}}{{else}}None{{end}}
-
-
-
Triggered at
-
{{date "2006-01-02 15:04:05" .StartTime}}
-
- {{if .CreatorID}} -
-
Creator
-
{{.Creator.PersonName}}
-
- {{end}} - {{if gt (len .Responders) 0}} -
-
Responders
-
{{range .Responders}}@{{.PersonName}} {{end}}
-
- {{end}} -
-
Progress
-
{{.Progress}}
-
-
-
Description
-
-
{{toHtml .Description}}
-
-
- {{if .Labels.resource}} -
-
Alert targets
-
-
{{toHtml (joinAlertLabels . "resource" ", ")}}
-
-
- {{end}} -
-
Acknowledge
View Details
-
-
-
ALL RIGHTS RESERVED © Beijing Flashcat Cloud Technology Co.,Ltd.
-
+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ Flashduty +
+
+
+ + + + + +
+

{{.Title}}

+ {{if .Description}} +

{{toHtml .Description}}

+ {{end}} +
+ + +
+ + + + + + + + + + + + + + + + {{if .CreatorID}} + + + + {{end}} + + {{if gt (len .Responders) 0}} + + + + {{end}} + + + + + + {{if .Labels.resource}} + + + + {{end}} + + {{if gt (len .Labels) 0}} + + + + {{end}} +
+ + + + + +
Severity{{.IncidentSeverity}}
+
+ + + + + +
Channel{{if .ChannelName}}{{.ChannelName}}{{else}}None{{end}}
+
+ + + + + +
Triggered at{{date "2006-01-02 15:04:05" .StartTime}}
+
+ + + + + +
Creator{{.Creator.PersonName}}
+
+ + + + + +
Responders{{range .Responders}}@{{.PersonName}} {{end}}
+
+ + + + + +
Progress{{.Progress}}
+
+ + + + + +
Resource{{(joinAlertLabels . "resource" ", ")}}
+
+ + + + + +
Labels +
{{mustToPrettyJson .Labels}}
+
+
+ + + + + + + + +
+ + + + +
+ Acknowledge Now +
+
+ + + + +
+ View Details +
+
+
+

ALL RIGHTS RESERVED © FLASHCAT.CLOUD

+
+
- ``` diff --git a/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.52 WecomAlert Integration.md b/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.52 WecomAlert Integration.md index 791342b4..4003f9d2 100644 --- a/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.52 WecomAlert Integration.md +++ b/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.52 WecomAlert Integration.md @@ -59,6 +59,88 @@ The system will generate a unique Wecom alert integration URL for you. This URL By default, the system always creates new alerts for each message, but you can switch to these modes: +**Trigger or Close Alert Based on Rules**: In this mode, when receiving a new message, the system matches messages according to your rules and triggers new alerts or closes existing alerts based on the matching results. + + - You need to fill in at least one **trigger** rule + - You must set up regex extraction rules for Alert Key. The system uses this field to find historical alerts for updates or closure. **If regex extraction fails, the system will use the message title to generate an Alert Key** to ensure alerts won't be lost due to configuration errors + - You can choose whether to discard messages when none of the rules match + + Configuration example: + + - Receive all messages, close the alert when the message content contains **RESOLVED**, otherwise trigger a new alert + - Extract Alert Key from messages using the rule **/(.*)/**. + + +### Notes +- Wecom alert integration URL only supports Text and Markdown message types; other message types cannot be received +- Flashduty will generate a default alert title: "Wecom robot Alert , If you need to change the title, you can customize it using the [alert pipeline](https://docs.flashcat.cloud/en/flashduty/alert-pipelines)" + +## Severity Mapping +--- + +Currently, all alerts pushed to Flashduty through the Wecom integration are set to Warning severity. However, you can customize the severity using the [alert pipeline](https://docs.flashcat.cloud/en/flashduty/alert-pipelines). + +--- +title: "Wecom Alert Integration" +description: "Generate a unique Wecom robot address in Flashduty, and synchronize the occurrence and recovery of alerts through Wecom" +date: "2025-05-19T10:00:00+08:00" +url: "https://docs.flashcat.cloud/en/flashduty/Wecom-alert-integration-guide" +--- + +Generate a unique Wecom robot address in Flashduty, and synchronize the occurrence and recovery of alerts through Wecom. + +
+ +## Operation Steps +--- + +### Create Wecom Alert Integration + +You can obtain a Wecom alert integration address through either of these two methods: + +#### Using Dedicated Integration + +Choose this method when you don't need to route alert events to different channels. It's simpler and recommended. + +
+ Expand + + 1. Go to the Flashduty console, select **Channel**, and enter a specific channel's details page + 2. Select the **Integration** tab, click **Add Integration** to enter the integration page + 3. Choose **Wecom Alert** integration and click **Save** to generate a card + 4. Click the generated card to view the **Wecom Alert Integration URL**, copy it for later use, and you're done + +
+ +#### Using Shared Integration + +Choose this method when you need to route alerts to different channels based on the alert event's payload information. + +
+ Expand + + 1. Go to the Flashduty console, select **Integration Center => Alert Events** to enter the integration selection page + 2. Select **Wecom Alert** integration: + - **Integration Name**: Define a name for the current integration + - **Message Type**: Select Wecom alert message type, currently only Text and Markdown are supported + - **Push Mode**: Choose when to trigger or recover alerts for Wecom notifications + 3. Copy the **Wecom Alert Integration URL** for later use + 4. Configure the default route and select the corresponding channel (after integration creation, you can go to `Routes` to configure more routing rules) + 5. Done + +
+
+ +### Customize Wecom Alert Integration + +#### Wecom Alert Integration URL + +The system will generate a unique Wecom alert integration URL for you. This URL is compatible with Wecom robot message protocol. When platforms only support Wecom robot channels, you can use this URL to receive corresponding messages. + +#### Push Mode + +By default, the system always creates new alerts for each message, but you can switch to these modes: + **Trigger or Close Alert Based on Rules**: In this mode, when receiving a new message, the system matches messages according to your rules and triggers new alerts or closes existing alerts based on the matching results. - You need to fill in at least one **trigger** rule diff --git a/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.53 Harbor Alert Integration.md b/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.53 Harbor Alert Integration.md new file mode 100644 index 00000000..63feb767 --- /dev/null +++ b/flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.53 Harbor Alert Integration.md @@ -0,0 +1,64 @@ +--- +title: "Harbor Alert Events" +description: "Sync Harbor alert events to Flashduty via webhook for automated alert noise reduction" +date: "2024-07-05T10:00:00+08:00" +url: "https://docs.flashcat.cloud/en/flashduty/volcengine-tls-integration-guide" +--- + +Sync Harbor alert events to Flashduty via webhook for automated alert noise reduction. + +
+ +## In Flashduty +--- +You can obtain an integration push URL through either of these two methods: + +### Using Private Integration + +Choose this method when you don't need to route alert events to different channels - it's simpler. + +
+ Expand + + 1. Go to the Flashduty console, select **Channel**, and enter a channel's details page + 2. Select the **Integrations** tab, click **Add Integration** to enter the integration page + 3. Choose **Harbor** integration and click **Save** to generate a card + 4. Click the generated card to view the **Push URL**, copy it for later use, and you're done + +
+ +### Using Shared Integration + +Choose this method when you need to route alerts to different channels based on the alert event payload. + +
+ Expand + + 1. Go to the Flashduty console, select **Integration Center=>Alert Events** to enter the integration selection page + 2. Select **Harbor** integration: + - **Integration Name**: Define a name for this integration + 3. Configure the default route and select the corresponding channel (after the integration is created, you can go to `Route` to configure more routing rules) + 4. Click **Save** and copy the newly generated **push URL** for later use + 5. Done + +
+
+ +## In Harbor +--- + +### Configure Webhooks + +1. Log in to the Harbor interface with an account that has at least project administrator privileges. +2. Go to `Projects`, select a project, and select `Webhooks`. +3. Select notify type `HTTP`, so the webhook will be send to a HTTP endpoint. +4. Select payload format as `Default or CloudEvents` when choose the HTTP notify type. +5. Select events that you want to subscribe. +6. Enter the alert integration's PUSH URL in the Endpoint URL field. +7. Click Add to create the webhook. + +## Severity Mapping +--- + +Currently, all alerts pushed to Flashduty through the Harbor integration are set to Warning severity. However, you can customize the severity using the [alert pipeline](https://docs.flashcat.cloud/en/flashduty/alert-pipelines). + diff --git "a/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1. \345\277\253\351\200\237\345\274\200\345\247\213.md" "b/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1. \345\277\253\351\200\237\345\274\200\345\247\213.md" new file mode 100644 index 00000000..87620461 --- /dev/null +++ "b/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1. \345\277\253\351\200\237\345\274\200\345\247\213.md" @@ -0,0 +1,87 @@ +--- +title: "快速开始" +description: "10分钟跑通 Flashduty:从告警接入到电话通知" +date: "2025-05-19T10:00:00+08:00" +url: "https://docs.flashcat.cloud/zh/flashduty/getting-started" +--- + +欢迎使用 Flashduty!本文将指引您在 **10 分钟内** 完成从告警接入到接收电话通知的完整流程。 + +## 视频演示 +--- + + +## 核心流程 +--- +Flashduty 的工作流非常直观:**告警** 通过 **集成** 进入 **协作空间**,然后根据 **分派策略** 通知到具体的 **人**。 + +![2025-12-18-14-33-17](https://docs-cdn.flashcat.cloud/images/png/1e270f4b78f6089cee4758f2f2dd1478.png) + +## 步骤一:创建协作空间 +--- +**协作空间** 是管理故障的"作战室"。建议按照业务线(如"支付中心")或组件(如"MySQL")来划分。 + +1. 进入 [协作空间列表](https://console.flashcat.cloud/channel),点击 **创建协作空间**。 +2. 输入名称(如 `我的测试空间`),关联一个 **管理团队**(确保您在团队中)。 + +:::tip 权限说明 +协作空间通过 **管理团队** 和 **访问级别** 共同控制权限: +* **管理团队**:空间的"所有者"。只有团队成员有权修改空间配置(集成、分派策略等)。 +* **访问级别**:可设置为 **公开**(全员可见)或 **私有**(仅成员可见)。 +::: + +## 步骤二:接入告警数据 +--- +现在,我们把监控系统的告警接入到系统中。Flashduty 提供两种接入模式(二选一即可): + +1. **专属集成(推荐新手)**: + * **路径**:协作空间详情页 -> **集成数据** -> **添加集成**。 + * **特点**:点对点直连。告警直接进入当前空间,无需额外配置,简单快捷。 + * **操作**:选择您的监控系统(如 `Zabbix`),保存后获得专属 **推送地址 (Webhook)**,将其配置到监控系统中即可。 + +2. **共享集成(进阶)**: + * **路径**:**集成中心** -> **告警事件** -> **添加集成**。 + * **特点**:统一入口,路由分发。告警先进入集成中心,再根据 **路由规则**(如按 `service` 标签)分发到不同的协作空间。 + * **适用**:公司级统一监控平台(如 Prometheus),需要将不同业务的告警分发给不同团队。 + +**验证**:手动触发一条监控告警。如果集成卡片上显示了 **最新事件时间**,说明接入成功! + +## 步骤三:配置分派策略 +--- +告警进来后,该通知谁?这由 **分派策略** 决定。 + +:::caution 前置检查 +接收 **电话/短信** 通知,需先在 **个人中心** 绑定手机号。 +接收 **邮件** 通知,需先绑定邮箱。 +::: + +1. 在协作空间详情页,切换到 **分派策略** 页签。 +2. 点击已有的分派策略进行编辑,或创建新的分派策略。 +3. **配置分派对象**: + * **分派给谁**:选择您自己,或者您的团队。 + * **怎么通知**:勾选 **单聊**(电话/短信/邮件)或 **群聊**(钉钉/飞书群)。 +4. **保存**。 + +**验证**:再次触发一条监控告警。您的手机应该会立即收到电话或短信通知,同时 IM 群里也会收到告警卡片。 + +## 进阶配置 +--- +恭喜!您已经跑通了最核心的流程。接下来,您可以尝试更多高级功能: + +* **[值班排班](https://docs.flashcat.cloud/zh/flashduty/schedule-settings)**:告警只通知当天的值班人员。 +* **[告警降噪](https://docs.flashcat.cloud/zh/flashduty/noise-reduction-settings)**:将短时间内涌入的 100 条相同告警合并为 1 条。 +* **[路由规则](https://docs.flashcat.cloud/zh/flashduty/alert-routings)**:根据告警内容(如 `labels.env=prod`),自动分发到不同的协作空间。 + + +## 常见问题 +--- +
+收不到电话/短信通知? +请前往 账户设置 -> 通知设置,检查您的手机号是否已验证,以及在"分派通知"中是否开启了电话/短信渠道。 +
+ +
+是否收费? +新注册企业享有 14 天免费试用期(专业版)。试用结束后,如需购买,请前往费用中心。 +
+ diff --git "a/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1.3 \345\270\270\350\247\201\351\227\256\351\242\230.md" "b/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1.3 \345\270\270\350\247\201\351\227\256\351\242\230.md" index 1b60426d..f09ef222 100644 --- "a/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1.3 \345\270\270\350\247\201\351\227\256\351\242\230.md" +++ "b/flashduty/zh/1. On-call/1. \345\277\253\351\200\237\345\274\200\345\247\213/1.3 \345\270\270\350\247\201\351\227\256\351\242\230.md" @@ -205,7 +205,7 @@ url: "https://docs.flashcat.cloud/zh/flashduty/frequently-asked-questions" 卡塔尔 (Qatar) (+974) | 16465861127 俄罗斯/哈萨克斯坦 (Russia/Kazakhstan) | (+7) | 16465861127 沙特阿拉伯 (Saudi Arabia) | (+966) | 16465861127 - 新加坡 (Singapore) | (+65) | 16465861127 + 新加坡 (Singapore) | (+65) | 6531297878 斯里兰卡 (Sri Lanka) | (+94) | 16465861127 中国台湾 (Taiwan) | (+886) | 16465861127 塔吉克斯坦 (Tajikistan) | (+992) | 16465861127 diff --git "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.13 \351\200\232\347\237\245\346\270\240\351\201\223\351\205\215\347\275\256\346\214\207\345\215\227.md" "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.13 \351\200\232\347\237\245\346\270\240\351\201\223\351\205\215\347\275\256\346\214\207\345\215\227.md" index b1e078ce..74df83e4 100644 --- "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.13 \351\200\232\347\237\245\346\270\240\351\201\223\351\205\215\347\275\256\346\214\207\345\215\227.md" +++ "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.13 \351\200\232\347\237\245\346\270\240\351\201\223\351\205\215\347\275\256\346\214\207\345\215\227.md" @@ -220,7 +220,7 @@ Flashduty App 是 on-call 工程师最高效的移动办公工具。无论您身 卡塔尔 (Qatar) (+974) | 16465861127 俄罗斯/哈萨克斯坦 (Russia/Kazakhstan) | (+7) | 16465861127 沙特阿拉伯 (Saudi Arabia) | (+966) | 16465861127 - 新加坡 (Singapore) | (+65) | 16465861127 + 新加坡 (Singapore) | (+65) | 6531297878 斯里兰卡 (Sri Lanka) | (+94) | 16465861127 中国台湾 (Taiwan) | (+886) | 16465861127 塔吉克斯坦 (Tajikistan) | (+992) | 16465861127 diff --git "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.7 \351\205\215\347\275\256\351\200\232\347\237\245\346\250\241\346\235\277.md" "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.7 \351\205\215\347\275\256\351\200\232\347\237\245\346\250\241\346\235\277.md" index 0e4ec9fb..688b93d3 100644 --- "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.7 \351\205\215\347\275\256\351\200\232\347\237\245\346\250\241\346\235\277.md" +++ "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.7 \351\205\215\347\275\256\351\200\232\347\237\245\346\250\241\346\235\277.md" @@ -1086,80 +1086,321 @@ msg_type 必填,值为 post - -
-
-
您有故障待处理
-
-
-
-
-
故障标题
-
{{.Title}}
-
-
-
严重程度
-
{{.IncidentSeverity}}
-
-
-
协作空间
-
{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}
-
-
-
触发时间
-
{{date "2006-01-02 15:04:05" .StartTime}}
-
- {{if .CreatorID}} -
-
发起人员
-
{{.Creator.PersonName}}
-
- {{end}} - {{if gt (len .Responders) 0}} -
-
分派人员
-
{{range .Responders}}@{{.PersonName}} {{end}}
-
- {{end}} -
-
处理进度
-
{{.Progress}}
-
-
-
故障描述
-
-
{{toHtml .Description}}
-
-
- {{if .Labels.resource}} -
-
告警对象
-
-
{{toHtml (joinAlertLabels . "resource" ", ")}}
-
-
- {{end}} -
-
立即认领
查看详情
-
-
-
ALL RIGHTS RESERVED © 北京快猫星云科技有限公司
-
+ + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +
+ Flashduty +
+
+
+ + + + + +
+

{{.Title}}

+ {{if .Description}} +

{{toHtml .Description}}

+ {{end}} +
+ + +
+ + + + + + + + + + + + + + + + {{if .CreatorID}} + + + + {{end}} + + {{if gt (len .Responders) 0}} + + + + {{end}} + + + + + + {{if .Labels.resource}} + + + + {{end}} + + {{if gt (len .Labels) 0}} + + + + {{end}} +
+ + + + + +
严重程度{{.IncidentSeverity}}
+
+ + + + + +
协作空间{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}
+
+ + + + + +
触发时间{{date "2006-01-02 15:04:05" .StartTime}}
+
+ + + + + +
发起人员{{.Creator.PersonName}}
+
+ + + + + +
处理人员{{range .Responders}}@{{.PersonName}} {{end}}
+
+ + + + + +
处理进度{{.Progress}}
+
+ + + + + +
告警对象{{(joinAlertLabels . "resource" ", ")}}
+
+ + + + + +
标签 +
{{mustToPrettyJson .Labels}}
+
+
+ + + + + + + + +
+ + + + +
+ 立即认领 +
+
+ + + + +
+ 查看详情 +
+
+
+

ALL RIGHTS RESERVED © FLASHCAT.CLOUD

+
+
- ``` diff --git "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.9 \351\205\215\347\275\256\344\270\252\344\272\272\344\277\241\346\201\257.md" "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.9 \351\205\215\347\275\256\344\270\252\344\272\272\344\277\241\346\201\257.md" index 150d1d22..02e04e2f 100644 --- "a/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.9 \351\205\215\347\275\256\344\270\252\344\272\272\344\277\241\346\201\257.md" +++ "b/flashduty/zh/1. On-call/3. \351\205\215\347\275\256\347\256\241\347\220\206/4.9 \351\205\215\347\275\256\344\270\252\344\272\272\344\277\241\346\201\257.md" @@ -26,7 +26,7 @@ url: "https://docs.flashcat.cloud/zh/flashduty/preference-settings" - 账号身份分为两种,分别是主体账号和成员账号。 - 账号昵称支持中英文,主要用于名称显示。 - 修改邮箱或手机号时需要进行验证码验证。 -- 手机号目前支持的地区:中国大陆、美国、加拿大、印度尼西亚、德国、马来西亚、澳大利亚、新加坡、泰国、俄罗斯、韩国、沙特阿拉伯、越南、日本。 +- 手机号目前支持的地区:中国大陆、美国、加拿大、印度尼西亚、德国、马来西亚、澳大利亚、新加坡、泰国、俄罗斯、韩国、沙特阿拉伯、越南、日本等等。 ### 消息通知 diff --git "a/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.1 \345\221\212\350\255\246\351\233\206\346\210\220/8.1.53 Harbor \345\221\212\350\255\246\351\233\206\346\210\220\346\214\207\345\274\225.md" "b/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.1 \345\221\212\350\255\246\351\233\206\346\210\220/8.1.53 Harbor \345\221\212\350\255\246\351\233\206\346\210\220\346\214\207\345\274\225.md" new file mode 100644 index 00000000..2e576c1a --- /dev/null +++ "b/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.1 \345\221\212\350\255\246\351\233\206\346\210\220/8.1.53 Harbor \345\221\212\350\255\246\351\233\206\346\210\220\346\214\207\345\274\225.md" @@ -0,0 +1,68 @@ +--- +title: "Harbor 告警集成" +description: "通过 webhook 的方式同步 Harbor 的告警事件到 Flashduty,实现告警事件自动化降噪处理" +date: "2025-05-19T10:00:00+08:00" +url: "https://docs.flashcat.cloud/zh/flashduty/harboe-integration-guide" +--- + +通过 webhook 的方式同步 Harbor 的告警事件到 Flashduty,实现告警事件自动化降噪处理。 + +
+ +## 在 Flashduty +--- + +### 创建 Harbor 告警集成 + +您可通过以下2种方式,获取一个企微机器人告警集成地址,任选其一即可。 + +#### 使用专属集成 + +当您不需要将告警事件路由到不同的协作空间,优先选择此方式,更简单。 + +
+ 展开 + + 1. 进入 Flashduty 控制台,选择 **协作空间**,进入某个空间的详情页面 + 2. 选择 **集成数据** tab,点击 **添加一个集成**,进入添加集成页面 + 3. 选择 **Harbor** 集成,点击 **保存**,生成卡片。 + 4. 点击生成的卡片,可以查看到 **Harbor 告警集成地址**,复制备用,完成。 + +
+ +#### 使用共享集成 + +当您需要根据告警事件的 Payload 信息,将告警路由到不同的协作空间,优先选择此方式。 + +
+ 展开 + + 1. 进入 Flashduty 控制台,选择 **集成中心=>告警事件**,进入集成选择页面。 + 2. 选择 **Harbor** 集成: + - **集成名称**:为当前集成定义一个名称。 + - **推送模式**:选择企微告警在何种情况下触发或恢复告警。 + 3. 复制当前页面的 **Harbor 告警集成地址** 备用。 + 4. 配置默认路由,并选择对应的协作空间(集成创建后可以前往 `路由` 进行更多路由规则的配置)。 + 5. 完成。 + +
+ +## 在 Harbor +--- +
+ + +### 配置 Webhook 通道 + +1. 使用至少具有项目管理员权限的帐户登录 Harbor 界面。 +2. 转到`项目`,选择一个项目,然后选择 `Webhook`。 +3. 选择通知类型 `HTTP`,以便 webhook 将发送到 HTTP 端点。 +4. 当选择 HTTP 通知类型时,选择有效负载格式为 `Default 或 CloudEvents`。 +5. 选择您要`订阅的事件`。 +6. `Endpoint URL` 输入告警集成的推送地址。 +7. 单击 添加 以创建 webhook。 + +## 严重程度映射关系 +--- + +当前 Harbor 告警集成推送到 Flashduty 的严重程度均为 Warning,但您可以通过[告警处理 Pipeline](https://docs.flashcat.cloud/zh/flashduty/alert-pipelines) 来自定义严重程度。 \ No newline at end of file diff --git "a/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.5 Webhooks/8.5.3 \350\207\252\345\256\232\344\271\211\346\223\215\344\275\234.md" "b/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.5 Webhooks/8.5.3 \350\207\252\345\256\232\344\271\211\346\223\215\344\275\234.md" index a59c28c5..725e913e 100644 --- "a/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.5 Webhooks/8.5.3 \350\207\252\345\256\232\344\271\211\346\223\215\344\275\234.md" +++ "b/flashduty/zh/1. On-call/5. \351\233\206\346\210\220\345\274\225\345\257\274/8.5 Webhooks/8.5.3 \350\207\252\345\256\232\344\271\211\346\223\215\344\275\234.md" @@ -245,7 +245,7 @@ curl -X POST 'https://example.com/incident/action?a=a' \ 1. **服务是否有响应超时时间?** - - 服务需要在 1 秒内返回响应,超过 1 秒则认为响应失败 + - 服务需要在 2 秒内返回响应,超过 2 秒则认为响应失败 2. **推送来源可信 IP 白名单?** diff --git a/src/en.ts b/src/en.ts index 0d1fe026..5976fafa 100644 --- a/src/en.ts +++ b/src/en.ts @@ -52,7 +52,7 @@ import Monit from "../flashduty/en/1. On-call/8. Integrations/8.1 Alerts integra import Rum from "../flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.50 RUM Alert Integration.md?raw"; import Cloudflare from "../flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.51 Cloudflare Integration.md?raw"; import WecomAlert from "../flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.52 WecomAlert Integration.md?raw"; - +import Harbor from "../flashduty/en/1. On-call/8. Integrations/8.1 Alerts integration/8.1.53 Harbor Alert Integration.md?raw"; /** ⬆️⬆️⬆️⬆️ 告警集成 ⬆️⬆️⬆️⬆️ */ /** ⬇️⬇️⬇️⬇️ 变更事件 ⬇️⬇️⬇️⬇️ */ @@ -154,6 +154,7 @@ const docs = { Rum, Cloudflare, WecomAlert, - ServiceDeskPlusSync + ServiceDeskPlusSync, + Harbor }; export default docs; diff --git a/src/zh.ts b/src/zh.ts index f6d12432..0602079f 100644 --- a/src/zh.ts +++ b/src/zh.ts @@ -52,6 +52,7 @@ import Monit from "../flashduty/zh/1. On-call/5. 集成引导/8.1 告警集成/8 import Rum from "../flashduty/zh/1. On-call/5. 集成引导/8.1 告警集成/8.1.50 RUM 告警集成指引.md?raw"; import Cloudflare from "../flashduty/zh/1. On-call/5. 集成引导/8.1 告警集成/8.1.51 Cloudflare 集成指引.md?raw"; import WecomAlert from "../flashduty/zh/1. On-call/5. 集成引导/8.1 告警集成/8.1.52 企微告警集成指引.md?raw"; +import Harbor from "../flashduty/zh/1. On-call/5. 集成引导/8.1 告警集成/8.1.53 Harbor 告警集成指引.md?raw"; /** ⬆️⬆️⬆️⬆️ 告警集成 ⬆️⬆️⬆️⬆️ */ /** ⬇️⬇️⬇️⬇️ 变更事件 ⬇️⬇️⬇️⬇️ */ @@ -151,6 +152,7 @@ const docs = { Rum, Cloudflare, WecomAlert, - ServiceDeskPlusSync + ServiceDeskPlusSync, + Harbor }; export default docs;