flashduty-knowledge-base 1.2.4-beta.5 → 1.2.5-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/en.d.ts +1 -0
- package/dist/esm/en.js +643 -187
- package/dist/esm/zh.js +355 -39
- package/dist/iife/en.js +627 -171
- package/dist/iife/zh.js +342 -26
- package/dist/zh.d.ts +1 -0
- package/package.json +1 -1
package/dist/iife/zh.js
CHANGED
|
@@ -5144,13 +5144,33 @@ sidebarDepth: 3
|
|
|
5144
5144
|
- 确保账户已经完成关联,前往 飞书 > 工作台 > 搜索应用名称 > 打开应用,完成一次登录并关联(飞书< - >Flashduty)账号。如果已经登录过,尝试点击右上角菜单,切换账户,重新登录来绑定账号
|
|
5145
5145
|
- 确保已购买足够的 license,已使用 license 情况,可以在控制台 > 费用中心查看
|
|
5146
5146
|
|
|
5147
|
-
|
|
5147
|
+
3. **分派策略飞书群聊列表为空**?
|
|
5148
5148
|
|
|
5149
5149
|
- 前往 飞书,选择群聊会话,添加已创建的Flashduty机器人,如下图所示:
|
|
5150
5150
|
- 回到分派策略配置页面,刷新后重新选择群聊列表
|
|
5151
5151
|
|
|
5152
5152
|
<img alt="drawing" width="800" src="https://download.flashcat.cloud/feishu-self-app-invite-to-chat.jpeg" />
|
|
5153
5153
|
<img src="https://download.flashcat.cloud/feishu-self-app-notify-rule.png" alt="drawing" width="800"/>
|
|
5154
|
+
|
|
5155
|
+
4. **飞书自建应用 API 限制:** [飞书文档说明](https://open.feishu.cn/document/uAjLw4CM/ugTN1YjL4UTN24CO1UjN/platform-updates-/custom-app-api-call-limit)
|
|
5156
|
+
|
|
5157
|
+
**调用量限制:**
|
|
5158
|
+
|
|
5159
|
+
| 飞书版本 | 调用总量/月 | 刷新时间 |
|
|
5160
|
+
| :----------: | :--: | :----: |
|
|
5161
|
+
|基础免费版|10,000 次|每个自然月的 1 号|
|
|
5162
|
+
|其他版本|不限制|-|
|
|
5163
|
+
|
|
5164
|
+
**频控限制:**
|
|
5165
|
+
|
|
5166
|
+
| 场景 | 限制 |
|
|
5167
|
+
| :----------: | :--: |
|
|
5168
|
+
|所有接口|每个应用最高频率 50 次/秒|
|
|
5169
|
+
|发消息接口|每个应用最高频率 1000 次/分钟|
|
|
5170
|
+
|群机器人 Webhook|最高频率 100 次/分钟|
|
|
5171
|
+
|给同一个用户或同一个群发消息|最高频率 5 次/秒|
|
|
5172
|
+
|
|
5173
|
+
**注意:** 超出限制后将无法正常推送消息,建议合理使用通知渠道
|
|
5154
5174
|
`,Dingtalk:`---
|
|
5155
5175
|
title: "钉钉集成"
|
|
5156
5176
|
description: "通过集成钉钉自建应用,实现在钉钉端内接收和响应告警的能力"
|
|
@@ -5302,6 +5322,15 @@ url: "https://docs.flashcat.cloud/zh/flashduty/dingtalk-integration-guide"
|
|
|
5302
5322
|
|
|
5303
5323
|
<img src="https://download.flashcat.cloud/dingtalk-self-app-notify-rule.png" alt="drawing" width="800"/>
|
|
5304
5324
|
|
|
5325
|
+
4. **钉钉自建应用 API 调用量:** [钉钉文档说明](https://open.dingtalk.com/document/orgapp/descriptions-about-adjusting-limit-and-frequency-of-api-calls?spm=ding_open_doc.document.0.0.6f6b21d9WtkxJI)
|
|
5326
|
+
|
|
5327
|
+
| 钉钉版本 | 调用总量/月 | QPS| 刷新时间 |
|
|
5328
|
+
| :----------: | :--: | :----: | :----:|
|
|
5329
|
+
|标准版|10,000 次|20|每月1日|
|
|
5330
|
+
|专业版|50万次|40| 每月1日 |
|
|
5331
|
+
|专属版|550万次|60| 每月1日 |
|
|
5332
|
+
|
|
5333
|
+
**注意:** 超出限制后将无法正常推送消息,建议合理使用通知渠道
|
|
5305
5334
|
`,Wecom:`---
|
|
5306
5335
|
title: "企业微信集成"
|
|
5307
5336
|
description: "通过集成企业微信第三方应用,实现在企业微信端内接收和响应告警的能力"
|
|
@@ -5722,6 +5751,7 @@ curl -X POST 'https://example.com/alert/webhook?a=a' \\
|
|
|
5722
5751
|
| i_rslv | 关闭故障(自动或手动关闭) |
|
|
5723
5752
|
| i_reopen | 重新打开故障 |
|
|
5724
5753
|
| i_merge | 手动合并故障 |
|
|
5754
|
+
| i_comm | 添加评论 |
|
|
5725
5755
|
| i_r_title | 更新故障标题 |
|
|
5726
5756
|
| i_r_desc | 更新故障描述 |
|
|
5727
5757
|
| i_r_impact | 更新故障影响 |
|
|
@@ -6198,7 +6228,7 @@ url: "https://docs.flashcat.cloud/zh/flashduty/template-settings"
|
|
|
6198
6228
|
---
|
|
6199
6229
|
**引用变量示例**:
|
|
6200
6230
|
|
|
6201
|
-
\`\`\`
|
|
6231
|
+
\`\`\`go
|
|
6202
6232
|
// 引用标题
|
|
6203
6233
|
{{.Title}}
|
|
6204
6234
|
|
|
@@ -6302,7 +6332,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6302
6332
|
- 渲染失败后,系统将使用默认模板兜底,来保证消息可达;
|
|
6303
6333
|
- 推荐您在不确定引用变量是否存在时,使用逻辑判断来避免渲染异常,如\`resource\`标签:
|
|
6304
6334
|
|
|
6305
|
-
\`\`\`
|
|
6335
|
+
\`\`\`go
|
|
6306
6336
|
// 错误做法:直接读取标签
|
|
6307
6337
|
{{.Labels.resource}}
|
|
6308
6338
|
|
|
@@ -6312,7 +6342,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6312
6342
|
|
|
6313
6343
|
3. **故障标题含有“>”之类的\`字符转义\`?**
|
|
6314
6344
|
|
|
6315
|
-
\`\`\`
|
|
6345
|
+
\`\`\`go
|
|
6316
6346
|
// 使用toHtml函数
|
|
6317
6347
|
{{toHtml .Title}}
|
|
6318
6348
|
|
|
@@ -6322,7 +6352,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6322
6352
|
|
|
6323
6353
|
4. **时间变量都是时间戳类型,如何\`转换时间格式\`?**
|
|
6324
6354
|
|
|
6325
|
-
\`\`\`
|
|
6355
|
+
\`\`\`go
|
|
6326
6356
|
// date函数,将时间戳转换可读格式
|
|
6327
6357
|
// "2006-01-02 15:04:05"是一种常见格式,更多格式请检索网络
|
|
6328
6358
|
{{date "2006-01-02 15:04:05" .StartTime}}
|
|
@@ -6332,7 +6362,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6332
6362
|
\`\`\`
|
|
6333
6363
|
|
|
6334
6364
|
5. **如何在 for 循环内部引用外部变量?**
|
|
6335
|
-
\`\`\`
|
|
6365
|
+
\`\`\`go
|
|
6336
6366
|
// 在外部变量前增加”$“
|
|
6337
6367
|
{{range .Responders}}
|
|
6338
6368
|
{{if eq $.Progress "Triggered"}}
|
|
@@ -6342,14 +6372,14 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6342
6372
|
\`\`\`
|
|
6343
6373
|
6. **如何提取命名中带”.“的字段值,如标签中的“obj.instance”的信息?**
|
|
6344
6374
|
|
|
6345
|
-
\`\`\`
|
|
6375
|
+
\`\`\`go
|
|
6346
6376
|
// 使用index函数
|
|
6347
6377
|
{{index .Labels "obj.instance"}}
|
|
6348
6378
|
\`\`\`
|
|
6349
6379
|
|
|
6350
6380
|
7. **如何提取故障关联告警中某个label的信息并去重?**
|
|
6351
6381
|
|
|
6352
|
-
\`\`\`
|
|
6382
|
+
\`\`\`go
|
|
6353
6383
|
// 使用alertLabels函数,得到去重后的数组
|
|
6354
6384
|
{{alertLabels . "resource"}}
|
|
6355
6385
|
|
|
@@ -6359,7 +6389,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6359
6389
|
|
|
6360
6390
|
8. **如何遍历并打印labels?**
|
|
6361
6391
|
|
|
6362
|
-
\`\`\`
|
|
6392
|
+
\`\`\`go
|
|
6363
6393
|
// 完整遍历
|
|
6364
6394
|
{{range $k, $v := .Labels}}
|
|
6365
6395
|
{{$k}} : {{toHtml $v}}
|
|
@@ -6412,7 +6442,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6412
6442
|
---
|
|
6413
6443
|
您需要预先配置 \`集成中心-即时消息-飞书\` 集成,才能发送消息卡片。如果不设置自定义内容,将采用系统默认模板,渲染全部标签信息:
|
|
6414
6444
|
|
|
6415
|
-
\`\`\`
|
|
6445
|
+
\`\`\`go
|
|
6416
6446
|
{{if .Description}}**description** :{{toHtml .Labels.body_text .Description}}{{end}}
|
|
6417
6447
|
{{if .Labels.resource}}**resource** : {{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6418
6448
|
{{range $k, $v := .Labels}}
|
|
@@ -6428,7 +6458,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6428
6458
|
- 我们列出了一些常见标签,您可自行删减;
|
|
6429
6459
|
- 在飞书应用中,系统会自动帮您删除(因标签不存在导致的)渲染空行,您可放心配置
|
|
6430
6460
|
|
|
6431
|
-
\`\`\`
|
|
6461
|
+
\`\`\`go
|
|
6432
6462
|
{{if (index .Labels "resource")}}resource:{{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6433
6463
|
{{if (index .Labels "check")}}check:{{toHtml (index .Labels "check")}}{{end}}
|
|
6434
6464
|
{{if (index .Labels "metric")}}metric:{{index .Labels "metric"}}{{end}}
|
|
@@ -6458,7 +6488,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6458
6488
|
---
|
|
6459
6489
|
您需要预先配置 \`集成中心-即时消息-钉钉\` 集成,才能发送消息卡片。如果不设置自定义内容,将采用系统默认模板,渲染全部标签信息:
|
|
6460
6490
|
|
|
6461
|
-
\`\`\`
|
|
6491
|
+
\`\`\`go
|
|
6462
6492
|
{{if .Description}}**description** :{{toHtml .Labels.body_text .Description}}{{end}}
|
|
6463
6493
|
{{if .Labels.resource}}**resource** : {{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6464
6494
|
{{range $k, $v := .Labels}}
|
|
@@ -6474,7 +6504,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6474
6504
|
- 我们列出了一些常见标签,您可自行删减;
|
|
6475
6505
|
- 在钉钉应用中,系统会自动帮您删除(因标签不存在导致的)渲染空行,您可放心配置
|
|
6476
6506
|
|
|
6477
|
-
\`\`\`
|
|
6507
|
+
\`\`\`go
|
|
6478
6508
|
{{if (index .Labels "resource")}}**resource**:{{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6479
6509
|
{{if (index .Labels "metric")}}**metric**:{{index .Labels "metric"}}{{end}}
|
|
6480
6510
|
{{if (index .Labels "prom_ql")}}**prom_ql**:{{toHtml (index .Labels "prom_ql")}}{{end}}
|
|
@@ -6507,7 +6537,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6507
6537
|
- 我们列出了一些常见标签,您可自行删减;
|
|
6508
6538
|
- 在企业微信应用中,系统会自动帮您删除(因标签不存在导致的)渲染空行,您可放心配置
|
|
6509
6539
|
|
|
6510
|
-
\`\`\`
|
|
6540
|
+
\`\`\`go
|
|
6511
6541
|
{{if (index .Labels "resource")}}resource:{{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6512
6542
|
{{if (index .Labels "metric")}}metric:{{index .Labels "metric"}}{{end}}
|
|
6513
6543
|
{{if (index .Labels "prom_ql")}}prom_ql:{{toHtml (index .Labels "prom_ql")}}{{end}}
|
|
@@ -6543,7 +6573,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6543
6573
|
---
|
|
6544
6574
|
您需要预先配置 \`集成中心-即时消息- Slack\` 集成,才能发送消息卡片。如果不设置自定义内容,将采用系统默认模板,仅渲染常见标签信息:
|
|
6545
6575
|
|
|
6546
|
-
\`\`\`
|
|
6576
|
+
\`\`\`go
|
|
6547
6577
|
{{if .Description}}*description* :{{toHtml .Labels.body_text .Description}}{{end}}
|
|
6548
6578
|
{{if .Labels.resource}}*resource* : {{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6549
6579
|
{{range $k, $v := .Labels}}
|
|
@@ -6561,7 +6591,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6561
6591
|
- 消息可以发送长度为15000左右字符,超出后截断发送;
|
|
6562
6592
|
- 在 Slack 应用中,系统会自动帮您删除(因标签不存在导致的)渲染空行,您可放心配置
|
|
6563
6593
|
|
|
6564
|
-
\`\`\`
|
|
6594
|
+
\`\`\`go
|
|
6565
6595
|
{{if (index .Labels "resource")}}*resource*:{{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6566
6596
|
{{if (index .Labels "metric")}}*metric*:{{index .Labels "metric"}}{{end}}
|
|
6567
6597
|
{{if (index .Labels "prom_ql")}}*prom_ql*:{{toHtml (index .Labels "prom_ql")}}{{end}}
|
|
@@ -6590,7 +6620,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6590
6620
|
---
|
|
6591
6621
|
您需要预先配置 \`集成中心-即时消息- Microsoft Teams\` 集成,才能发送消息卡片。如果不设置自定义内容,将采用系统默认模板,仅渲染常见标签信息:
|
|
6592
6622
|
|
|
6593
|
-
\`\`\`
|
|
6623
|
+
\`\`\`go
|
|
6594
6624
|
{{if .Description}}**description** :{{toHtml .Labels.body_text .Description}}{{end}}
|
|
6595
6625
|
{{if .Labels.resource}}**resource** : {{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6596
6626
|
{{range $k, $v := .Labels}}
|
|
@@ -6608,7 +6638,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6608
6638
|
- 消息可以发送长度为 28KB 左右字节,超出后报错;
|
|
6609
6639
|
- 在 Microsoft Teams 应用中,系统会自动帮您删除(因标签不存在导致的)渲染空行,您可放心配置
|
|
6610
6640
|
|
|
6611
|
-
\`\`\`
|
|
6641
|
+
\`\`\`go
|
|
6612
6642
|
{{if (index .Labels "resource")}}**resource**:{{toHtml (joinAlertLabels . "resource" ", ")}}{{end}}
|
|
6613
6643
|
{{if (index .Labels "metric")}}**metric**:{{index .Labels "metric"}}{{end}}
|
|
6614
6644
|
{{if (index .Labels "prom_ql")}}**prom_ql**:{{toHtml (index .Labels "prom_ql")}}{{end}}
|
|
@@ -6635,13 +6665,214 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6635
6665
|
|
|
6636
6666
|
## 飞书机器人
|
|
6637
6667
|
---
|
|
6638
|
-
|
|
6668
|
+
飞书机器人支持消息卡片,富文本和普通文本三种格式,默认模版是消息卡片格式。
|
|
6639
6669
|
|
|
6670
|
+
- msg_type 字段在消息卡片和富文本中必填,否则当成普通文本格式发送
|
|
6640
6671
|
- 消息\`最大长度为4000字节,超出后截断发送\`;
|
|
6641
|
-
- 如果文本中包含\`<br>\`,渲染时会\`先删除空行,再将<br>替换为换行符\`;
|
|
6642
6672
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6643
6673
|
|
|
6674
|
+
1. 消息卡片
|
|
6675
|
+
msg_type 必填,值为 interactive
|
|
6676
|
+
\`\`\`json
|
|
6677
|
+
{
|
|
6678
|
+
"msg_type": "interactive",
|
|
6679
|
+
"card": {
|
|
6680
|
+
"config": {
|
|
6681
|
+
"wide_screen_mode": true,
|
|
6682
|
+
"enable_forward": true
|
|
6683
|
+
},
|
|
6684
|
+
"header": {
|
|
6685
|
+
"template": "{{if eq .IncidentSeverity "Critical"}}red{{else if eq .IncidentSeverity "Warning"}}orange{{else}}yellow{{end}}",
|
|
6686
|
+
"title": {
|
|
6687
|
+
"content": "{{fireReason .}}INC #{{.Num}} {{toHtml .Title}}",
|
|
6688
|
+
"tag": "plain_text"
|
|
6689
|
+
}
|
|
6690
|
+
},
|
|
6691
|
+
"elements": [{
|
|
6692
|
+
"tag": "div",
|
|
6693
|
+
"fields": [{
|
|
6694
|
+
"text": {
|
|
6695
|
+
"tag": "lark_md",
|
|
6696
|
+
"content": "**🏢 协作空间:**{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}"
|
|
6697
|
+
}
|
|
6698
|
+
},
|
|
6699
|
+
{
|
|
6700
|
+
"text": {
|
|
6701
|
+
"tag": "lark_md",
|
|
6702
|
+
"content": "**{{if eq .IncidentSeverity "Critical"}}🔴{{else if eq .IncidentSeverity "Warning"}}⚠️{{else}}ℹ️{{end}} 严重程度:**{{.IncidentSeverity}}"
|
|
6703
|
+
}
|
|
6704
|
+
},
|
|
6705
|
+
{
|
|
6706
|
+
"text": {
|
|
6707
|
+
"tag": "lark_md",
|
|
6708
|
+
"content": "**⏰ 触发时间:**{{date "2006-01-02 15:04:05" .StartTime}}{{if gt .AlertCnt 1}}"
|
|
6709
|
+
}
|
|
6710
|
+
},
|
|
6711
|
+
{
|
|
6712
|
+
"text": {
|
|
6713
|
+
"tag": "lark_md",
|
|
6714
|
+
"content": "**🔔 聚合告警:**{{.AlertCnt}}条 {{end}}{{if .Labels.resource}}"
|
|
6715
|
+
}
|
|
6716
|
+
},
|
|
6717
|
+
{
|
|
6718
|
+
"tag": "div",
|
|
6719
|
+
"text": {
|
|
6720
|
+
"tag": "lark_md",
|
|
6721
|
+
"content": "**📌 告警对象:**{{toHtml (joinAlertLabels . "resource" ",")}} {{end}}{{if .Description}}"
|
|
6722
|
+
}
|
|
6723
|
+
},
|
|
6724
|
+
{
|
|
6725
|
+
"tag": "div",
|
|
6726
|
+
"text": {
|
|
6727
|
+
"tag": "lark_md",
|
|
6728
|
+
"content": "**🔍 故障描述:**{{.Description}}{{end}}{{if gt (len .Responders) 0}}"
|
|
6729
|
+
}
|
|
6730
|
+
},
|
|
6731
|
+
{
|
|
6732
|
+
"tag": "div",
|
|
6733
|
+
"text": {
|
|
6734
|
+
"tag": "lark_md",
|
|
6735
|
+
"content": "**👨💻 处理人员:**{{range .Responders}}@{{.PersonName}} {{end}}{{end}}"
|
|
6736
|
+
}
|
|
6737
|
+
}
|
|
6738
|
+
]
|
|
6739
|
+
},
|
|
6740
|
+
{
|
|
6741
|
+
"tag": "hr"
|
|
6742
|
+
},
|
|
6743
|
+
{
|
|
6744
|
+
"tag": "action",
|
|
6745
|
+
"actions": [{
|
|
6746
|
+
"tag": "button",
|
|
6747
|
+
"text": {
|
|
6748
|
+
"tag": "plain_text",
|
|
6749
|
+
"content": "故障详情"
|
|
6750
|
+
},
|
|
6751
|
+
"type": "primary",
|
|
6752
|
+
"url": "{{.DetailUrl}}"
|
|
6753
|
+
},
|
|
6754
|
+
{
|
|
6755
|
+
"tag": "button",
|
|
6756
|
+
"text": {
|
|
6757
|
+
"tag": "plain_text",
|
|
6758
|
+
"content": "认领"
|
|
6759
|
+
},
|
|
6760
|
+
"type": "primary",
|
|
6761
|
+
"url": "{{.DetailUrl}}?ack=1"
|
|
6762
|
+
}
|
|
6763
|
+
]
|
|
6764
|
+
}]
|
|
6765
|
+
}
|
|
6766
|
+
}
|
|
6767
|
+
\`\`\`
|
|
6768
|
+
|
|
6769
|
+
2. 富文本
|
|
6770
|
+
msg_type 必填,值为 post
|
|
6771
|
+
\`\`\`json
|
|
6772
|
+
{
|
|
6773
|
+
"msg_type": "post",
|
|
6774
|
+
"post": {
|
|
6775
|
+
"zh_cn": {
|
|
6776
|
+
"title": "{{if eq .IncidentSeverity "Critical"}}🔴{{else if eq .IncidentSeverity "Warning"}}⚠️{{else}}ℹ️{{end}} {{fireReason .}}INC #{{.Num}} {{toHtml .Title}}",
|
|
6777
|
+
"content": [
|
|
6778
|
+
[{
|
|
6779
|
+
"tag": "text",
|
|
6780
|
+
"text": "🏢 "
|
|
6781
|
+
}, {
|
|
6782
|
+
"tag": "text",
|
|
6783
|
+
"text": "协作空间:",
|
|
6784
|
+
"text_type": "bold"
|
|
6785
|
+
}, {
|
|
6786
|
+
"tag": "text",
|
|
6787
|
+
"text": "{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}\\n"
|
|
6788
|
+
}],
|
|
6789
|
+
[{
|
|
6790
|
+
"tag": "text",
|
|
6791
|
+
"text": "{{if eq .IncidentSeverity "Critical"}}🔴{{else if eq .IncidentSeverity "Warning"}}⚠️{{else}}ℹ️{{end}} "
|
|
6792
|
+
}, {
|
|
6793
|
+
"tag": "text",
|
|
6794
|
+
"text": "严重程度:",
|
|
6795
|
+
"text_type": "bold"
|
|
6796
|
+
}, {
|
|
6797
|
+
"tag": "text",
|
|
6798
|
+
"text": "{{.IncidentSeverity}}\\n",
|
|
6799
|
+
"text_type": "{{if eq .IncidentSeverity "Critical"}}bold{{end}}"
|
|
6800
|
+
}],
|
|
6801
|
+
[{
|
|
6802
|
+
"tag": "text",
|
|
6803
|
+
"text": "⏰ "
|
|
6804
|
+
}, {
|
|
6805
|
+
"tag": "text",
|
|
6806
|
+
"text": "触发时间:",
|
|
6807
|
+
"text_type": "bold"
|
|
6808
|
+
}, {
|
|
6809
|
+
"tag": "text",
|
|
6810
|
+
"text": "{{date "2006-01-02 15:04:05" .StartTime}}\\n"
|
|
6811
|
+
}],
|
|
6812
|
+
{{if gt .AlertCnt 1}}[{
|
|
6813
|
+
"tag": "text",
|
|
6814
|
+
"text": "🔔 "
|
|
6815
|
+
}, {
|
|
6816
|
+
"tag": "text",
|
|
6817
|
+
"text": "聚合告警:",
|
|
6818
|
+
"text_type": "bold"
|
|
6819
|
+
}, {
|
|
6820
|
+
"tag": "text",
|
|
6821
|
+
"text": "{{.AlertCnt}}条\\n"
|
|
6822
|
+
}],{{end}}
|
|
6823
|
+
{{if .Labels.resource}}[{
|
|
6824
|
+
"tag": "text",
|
|
6825
|
+
"text": "📋 "
|
|
6826
|
+
}, {
|
|
6827
|
+
"tag": "text",
|
|
6828
|
+
"text": "告警对象:",
|
|
6829
|
+
"text_type": "bold"
|
|
6830
|
+
}, {
|
|
6831
|
+
"tag": "text",
|
|
6832
|
+
"text": "{{toHtml (joinAlertLabels . "resource" ", ")}}\\n"
|
|
6833
|
+
}],{{end}}
|
|
6834
|
+
{{if .Description}}[{
|
|
6835
|
+
"tag": "text",
|
|
6836
|
+
"text": "📝 "
|
|
6837
|
+
}, {
|
|
6838
|
+
"tag": "text",
|
|
6839
|
+
"text": "描述:",
|
|
6840
|
+
"text_type": "bold"
|
|
6841
|
+
}, {
|
|
6842
|
+
"tag": "text",
|
|
6843
|
+
"text": "{{toHtml .Description}}\\n"
|
|
6844
|
+
}],{{end}}
|
|
6845
|
+
{{if gt (len .Responders) 0}}[{
|
|
6846
|
+
"tag": "text",
|
|
6847
|
+
"text": "👨💻 "
|
|
6848
|
+
}, {
|
|
6849
|
+
"tag": "text",
|
|
6850
|
+
"text": "处理人员:",
|
|
6851
|
+
"text_type": "bold"
|
|
6852
|
+
}, {
|
|
6853
|
+
"tag": "text",
|
|
6854
|
+
"text": "{{range .Responders}}@{{.PersonName}} {{end}}\\n"
|
|
6855
|
+
}],{{end}}
|
|
6856
|
+
[{
|
|
6857
|
+
"tag": "a",
|
|
6858
|
+
"href": "{{.DetailUrl}}",
|
|
6859
|
+
"text": "故障详情"
|
|
6860
|
+
},{
|
|
6861
|
+
"tag": "text",
|
|
6862
|
+
"text": " "
|
|
6863
|
+
},{
|
|
6864
|
+
"tag": "a",
|
|
6865
|
+
"href": "{{.DetailUrl}}?ack=1",
|
|
6866
|
+
"text": "认领"
|
|
6867
|
+
}]
|
|
6868
|
+
]
|
|
6869
|
+
}
|
|
6870
|
+
}
|
|
6871
|
+
}
|
|
6644
6872
|
\`\`\`
|
|
6873
|
+
|
|
6874
|
+
3. 普通文本
|
|
6875
|
+
\`\`\`go
|
|
6645
6876
|
{{fireReason .}}INC #{{.Num}} {{toHtml .Title}}
|
|
6646
6877
|
-----
|
|
6647
6878
|
协作空间:{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}
|
|
@@ -6667,7 +6898,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6667
6898
|
- 如果文本中包含\`<br>\`,渲染时会\`先删除空行,再将<br>替换为换行符\`;
|
|
6668
6899
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6669
6900
|
|
|
6670
|
-
\`\`\`
|
|
6901
|
+
\`\`\`go
|
|
6671
6902
|
{{fireReason .}}INC [#{{.Num}}]({{.DetailUrl}}) {{toHtml .Title}}
|
|
6672
6903
|
|
|
6673
6904
|
---
|
|
@@ -6694,7 +6925,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6694
6925
|
- 如果文本中包含\`<br>\`,渲染时会\`先删除空行,再将<br>替换为换行符\`;
|
|
6695
6926
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6696
6927
|
|
|
6697
|
-
\`\`\`
|
|
6928
|
+
\`\`\`go
|
|
6698
6929
|
{{fireReason .}}**INC [#{{.Num}}]({{.DetailUrl}}) {{toHtml .Title}}**
|
|
6699
6930
|
> 协作空间:<font color="warning">{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}</font>
|
|
6700
6931
|
> 严重程度:<font color="warning">{{.IncidentSeverity}}</font>
|
|
@@ -6718,7 +6949,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6718
6949
|
- 如果文本中包含\`<br>\`,渲染时会\`先删除空行,再将<br>替换为换行符\`;
|
|
6719
6950
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6720
6951
|
|
|
6721
|
-
\`\`\`
|
|
6952
|
+
\`\`\`go
|
|
6722
6953
|
{{fireReason .}}INC [#{{.Num}}]({{.DetailUrl}}) {{toHtml .Title}}
|
|
6723
6954
|
-----
|
|
6724
6955
|
协作空间:{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}
|
|
@@ -6742,7 +6973,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6742
6973
|
- 如果文本中包含\`<br>\`,渲染时会\`先删除空行,再将<br>替换为换行符\`;
|
|
6743
6974
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6744
6975
|
|
|
6745
|
-
\`\`\`
|
|
6976
|
+
\`\`\`go
|
|
6746
6977
|
{{fireReason .}}INC <{{.DetailUrl}}|#{{.Num}}> {{toHtml .Title}}
|
|
6747
6978
|
-----
|
|
6748
6979
|
协作空间:{{if .ChannelName}}{{.ChannelName}}{{else}}无{{end}}
|
|
@@ -6767,7 +6998,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6767
6998
|
- 消息格式 \`遵循Zoom消息格式\`,当前机器人应用不支持Markdown,其他格式可以参考官网: https://developers.zoom.us/docs/team-chat-apps/customizing-messages/
|
|
6768
6999
|
- 如果不设置自定义内容,将采用系统默认模板,仅展示关键信息:
|
|
6769
7000
|
|
|
6770
|
-
\`\`\`
|
|
7001
|
+
\`\`\`json
|
|
6771
7002
|
{"head": {
|
|
6772
7003
|
"text": "{{fireReason .}}INC [#{{.Num}}] {{toHtml .Title}}",
|
|
6773
7004
|
"style": {
|
|
@@ -6878,7 +7109,7 @@ CloseTime | int64 | 否 | 关闭时间,EndTime 为告警恢复时间,CloseTi
|
|
|
6878
7109
|
---
|
|
6879
7110
|
如果不设置自定义内容,将采用系统默认模板渲染通知:
|
|
6880
7111
|
|
|
6881
|
-
\`\`\`
|
|
7112
|
+
\`\`\`html
|
|
6882
7113
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
6883
7114
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
6884
7115
|
<title>{{.Title}}</title>
|
|
@@ -7076,4 +7307,89 @@ url: "https://docs.flashcat.cloud/zh/flashduty/huawei-apm-integration-guide"
|
|
|
7076
7307
|
|
|
7077
7308
|
</div>
|
|
7078
7309
|
|
|
7310
|
+
`,JiraSync:`---
|
|
7311
|
+
title: "Jira 同步"
|
|
7312
|
+
description: "通过 Jira 同步 Webhook,实现故障与 Jira Issue 的关联。"
|
|
7313
|
+
date: "2024-05-11T10:00:00+08:00"
|
|
7314
|
+
url: "https://docs.flashcat.cloud/zh/flashduty/jira-sync"
|
|
7315
|
+
---
|
|
7316
|
+
|
|
7317
|
+
通过 Jira 同步 Webhook,将 Flashduty 的故障与 Jira Issue 进行关联同步,实现 Flashduty 与 Jira 的联动。
|
|
7318
|
+
|
|
7319
|
+
## 前提说明
|
|
7320
|
+
- 该集成兼容 Jira Cloud 以及 Jira Server 和 Jira Data Center 的 7.x 和 8.x 版本。
|
|
7321
|
+
- 目前仅支持将故障相关信息或状态单向同步到 Jira 中,Jira 中的信息不会同步到 Flashduty 中。
|
|
7322
|
+
- 对于 Jira Cloud,请在授权配置的密码处填写 API Token;而对于Jira Server 或 Data Center,则使用您的 Jira 账户登录密码即可。
|
|
7323
|
+
|
|
7324
|
+
## 在 Jira Cloud 中获取 API Token (Jira Server 和 Data Center 请跳过)
|
|
7325
|
+
|
|
7326
|
+
- 登录 Jira Cloud 后,点击右上角头像,选择 **管理账户**。
|
|
7327
|
+
- 在 **管理账户** 页面中,选择 **安全性** 选项卡。
|
|
7328
|
+
- 在 **安全性** 页面中,点击 **创建并管理 API 令牌** 按钮。
|
|
7329
|
+
- 在 **创建并管理 API 令牌** 弹窗中,填写 API token 名称,并选择过期时间。
|
|
7330
|
+
- 点击 **创建** 按钮,创建 API token。
|
|
7331
|
+
- 创建完成后,复制 API token 值,并粘贴到 Flashduty 授权配置中的 API 令牌处。
|
|
7332
|
+
|
|
7333
|
+
## 在 Flashduty 中配置集成
|
|
7334
|
+
|
|
7335
|
+
### 1. 创建并认证 Jira 集成
|
|
7336
|
+
<div class="hide">
|
|
7337
|
+
|
|
7338
|
+
在集成中心,选择 **Webhook** ,选择 **Jira 同步** 集成,并填写以下认证信息。
|
|
7339
|
+
|
|
7340
|
+
</div>
|
|
7341
|
+
|
|
7342
|
+
- **Jira 平台类型**:根据您使用的版本进行选择,如果是 Data Center 版本的请选择私有化(Server) 即可。
|
|
7343
|
+
- **服务地址**:Cloud 版本请填写您的实际访问地址,例如: https://your-domain.atlassian.net,Server 版本请填写您的服务访问地址,例如: https://your-jira-server-url.com。
|
|
7344
|
+
- **用户名**:您的 Jira 账户名,Cloud 版本请填写您的邮箱,Server 版本请填写您的 Jira 账户名。
|
|
7345
|
+
- **API令牌/密码**:您的 Jira 账户密码,Cloud 版本请填写 API Token,Server 版本请填写您的 Jira 账户密码。
|
|
7346
|
+
- 填写完成后,点击 **下一步** 按钮,进行相关配置。
|
|
7347
|
+
|
|
7348
|
+
**关于权限**:请确保您的 Jira 账户拥有获取相关项目、事务类型以及创建 Issue 等权限,建议使用管理员账户。
|
|
7349
|
+
|
|
7350
|
+
### 2. Jira 集成配置
|
|
7351
|
+
|
|
7352
|
+
- **集成名称**:为当前集成定义一个名称。
|
|
7353
|
+
- **触发模式**:
|
|
7354
|
+
- 自动触发:需要配置相应的条件,Flashduty 会自动将符合条件的故障同步到 Jira 中。
|
|
7355
|
+
- 手动触发:需要在故障详情页的更多操作中手动触发 Jira 同步(该集成配置的名称为触发器名称)。
|
|
7356
|
+
- **项目 ID**:选择需要同步至 Jira 的项目。
|
|
7357
|
+
- **事务类型**:选择需要同步至 Jira 的事务类型。
|
|
7358
|
+
- **协作空间**:选择该集成生效的协作空间,只有该协作空间内的故障才可以同步至 Jira 中。
|
|
7359
|
+
- **严重程度映射**:如果选择的事务类型不支持优先级字段,则无法配置该映射关系。
|
|
7360
|
+
- **自定义字段映射**:可以选择将故障的某些标签或所有标签以及自定义字段内容同步至 Jira 的字段中(仅支持文本类型的字段)。
|
|
7361
|
+
|
|
7362
|
+
### 3. 关于更新
|
|
7363
|
+
|
|
7364
|
+
- 已经创建 Issue 的故障,如果您更新了故障的严重程度、状态,Jira 中会自动更新,但 Jira 中的更新不会同步到 Flashduty 中。
|
|
7365
|
+
- 评论信息会同步到 Jira 中,但 Jira 中更新的内容不会同步到 Flashduty 中。
|
|
7366
|
+
- 更新故障中的标题、描述、标签等字段的信息,Jira 中不会更新。
|
|
7367
|
+
|
|
7368
|
+
|
|
7369
|
+
### 4. Flashduty 与 Jira 的映射关系
|
|
7370
|
+
|
|
7371
|
+
#### 字段映射
|
|
7372
|
+
|
|
7373
|
+
| Jira | Flashduty |
|
|
7374
|
+
| ---------- | -------- |
|
|
7375
|
+
| 摘要 | 标题 |
|
|
7376
|
+
| 描述 | 描述 |
|
|
7377
|
+
| 优先级 | 严重程度 |
|
|
7378
|
+
| 报告人 | 集成配置的用户 |
|
|
7379
|
+
| 评论 | 评论 |
|
|
7380
|
+
|
|
7381
|
+
|
|
7382
|
+
#### 状态映射
|
|
7383
|
+
|
|
7384
|
+
| Jira | Flashduty |
|
|
7385
|
+
| ---------- | -------- |
|
|
7386
|
+
| Todo | 待处理 |
|
|
7387
|
+
| In Progress | 处理中 |
|
|
7388
|
+
| Done | 已解决 |
|
|
7389
|
+
|
|
7390
|
+
|
|
7391
|
+
### 5. 注意事项
|
|
7392
|
+
|
|
7393
|
+
- Flashduty 会按照默认的字段映射以及您配置的自定义字段映射进行同步信息,如果您的 Jira 事务类型中有必选的字段且没有配置映射关系,则会遇到创建 Jira Issue 失败的情况。
|
|
7394
|
+
- Jira 的 Issue 详情是基于项目 KEY + 编号的格式进行访问的,如果您修改了项目 KEY,可能无法通过 Flashduty 中保存的 Issue 地址进行访问,请谨慎修改项目 KEY。
|
|
7079
7395
|
`};n.FlashDocsZh=t})(window);
|
package/dist/zh.d.ts
CHANGED