利用数据分析告警机制,实现鸿鹄与飞书双向集成

本文介绍了如何实现鸿鹄与飞书的双向集成,利用鸿鹄的告警机制发送信息至飞书,并通过飞书的卡片消息功能构建返回链接,以便用户深入排查问题。通过Jinja2模版引擎和鸿鹄的tokens,可以定制丰富多样的告警消息。同时,提出了对鸿鹄告警实时性和编辑界面友好的改进建议。
摘要由CSDN通过智能技术生成

需求描述

实现鸿鹄与飞书的双向集成,依赖鸿鹄的告警机制,可以发送用户关心的信息到飞书。同时依赖飞书强大的卡片消息功能,在飞书消息里面能够通过链接(如下图)返回到鸿鹄以方便用户进一步排查和分析问题。

解决方案

1. 第一步创建告警

依据文档鸿鹄如何与飞书集成

https://yanhuang.yuque.com/staff-sbytbc/rb5rur/kgihmq

一步一步操作即可. 为了能够让告警更精确的触发,根据你的硬件配置和使用情况,设置一定的延时时间,一般来说30S是足够了。

2. 第二步构建消息模版

2.1 初探鸿鹄的告警token

根据文档创建告警|炎凰数据平台鸿鹄社区版

http://www.yanhuangdata.com/honghu_manual/docs/alerting/create/#token-lists, 可以获取很多有意义的告警相关的token,如下图

利用这些token,能很容易的知道此次告警的上下文,也就以为这些tokens可以用来组合一条丰富的告警信息。

2.2 熟悉鸿鹄的告警渲染模版

鸿鹄的告警信息渲染引擎,无论是邮件body还是webhook body,都采用Jinja2模版引擎来渲染,结合上面提到的tokens,就可以非常灵活地构建各式的模版,以应用于不同的接收端。Jinja2模版具体的细节可以参考:

https://jinja.palletsprojects.com/en/3.1.x/templates/

2.3 飞书的卡片消息

参考飞书卡片消息搭建工具:

https://open.feishu.cn/document/ukTMukTMukTM/uYzM3QjL2MzN04iNzcDN/message-card-builder

飞书卡片消息,开箱即用,无需太多的学习成本,很快就能制作出业务所需要的卡片消息。

2.4 飞书卡片消息最终模版

关键tokens

  • 获取程序的namespace
  • 获取程序的name
  • 获取alert search job的URL (注意:目前host需要hardcoded), 通过此URL就能从飞书返回到鸿鹄。

2.5 最终效果图

如下卡片消息包含了namespace, application name,error message和可返回鸿鹄的超链接。

鸿鹄价值

能够及时地推送告警信息,目前支持邮件和Webhook,当前大部分软件都包含Webhook功能,因此鸿鹄对接收端的支持应该是非常丰富的。

内生的tokens加上Jinja2渲染引擎,可以构建出各种接收端的消息主体

接收端能够返回鸿鹄,双向集成,方便了用户收到告警消息后,可以进一步探索当时的上下文,提供了排查得便利性。

后续工作

在告警这块,个人觉得鸿鹄在以下几个方面,可以进一步改进:

  • 告警的实时性:目前采用定时任务来产生告警信息,在某些情况下,消息不能实时地传达到接收端,可能会造成运维故障。
  • 告警的编辑页面需要进一步提升友好性

比如如上的编辑页面,负载这个地方只是一个input输入框,在消息模版比较复杂的情况下,是很难在此编辑的。我目前的做法是先用本地编辑器编辑好,然后复制到此输入框。

最好的方案可能是,鸿鹄提供一个消息模版的编辑界面,允许用户上传和在鸿鹄上编辑消息模版,在告警这个界面只要链接到某个消息模版即可。

  • 由于采用定时任务来触发告警,某个时间段可能存在多条alert logs,目前接收端只能收到最新的一条log。不过通过“返回鸿鹄”按钮,用户在对应的查询界面,可以看到所有的alert logs。鸿鹄可以试着优化此功能,或者建议用户返回鸿鹄查看更多的信息。

开发环境

Vector: 0.28.1

鸿鹄: 2.9.0

飞书: 6.0.5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值