告警通知对企业至关重要,直接影响网络稳定性。借助飞书集成平台,可以轻松将Zabbix与飞书进行对接,灵活地配置各种告警通知。
在日常工作中,IT运维人员需要及时收到和处理各种IT系统的告警信息,以保证系统稳定运行。在Zabbix监控系统中,用户可以通过配置将告警信息发送到飞书群中,以便快速处理。在本文中,我们将介绍如何将Zabbix告警信息处理成消息卡片,并发送到聊天消息中。
工作流预览
这个流程有如下步骤
01
Zabbix触发器:接收Zabbix的回调信息,触发工作流运行。
02
解析回调信息:解析Zabbix回调的信息,包括转换数据格式、信息拼接等。
03
分支:判断当前消息的类型。
04
组装告警卡片:组装发送消息卡片的数据。
05
发送告警消息:发送告警消息卡片到指定的群中。
06
07
发送恢复消息:发送恢复消息卡片到指定的群中。
二
操作步骤
前置准备
一、在Zabbix系统中配置飞书媒介类型并关联用户与动作
1.下载飞书的Zabbix媒介类型
下载地址:
2.在Zabbix中导入该媒介类型
在Zabbix控制台,选择管理>报警媒介,然后导入该媒介类型。导入规则选择“更新现有的”和“创建新的”。
3.配置支持飞书媒介类型的用户
在Zabbix系统中每个用户支持的媒介类型需要单独配置,因此必须要配置支持飞书媒介类型的用户。我们建议每一个接收告警信息的群都和Zabbix系统中的用户一一对应。
在管理》用户页面,选择已有用户编辑或者新建用户页面,选择报警媒介页面,类型选择“Feishu”,收件人填入飞书的回调地址。
注意:所选用户必须有告警主机的权限,否则告警信息是无法发送给该用户的。权限可以在用户群组中进行管理。
回调地址可以点击工作流中的Zabbix节点,在右侧设置页面可见回调地址。
4.修改Action配置
在配置》动作中选择需要发送给目标群的action进行修改,选择action,在操作页面添加发送对象(操作、恢复操作、更新操作都可以配置,可以按照实际情况及需求进行配置)。发送的用户选择上一步创建的用户,“仅送到”选择飞书。
注意:动作需要是启用状态且条件不能为空。
注意:zabbix版本需要是5.0及以上才支持导入媒介类型。
二、在群聊中添加发送消息的机器人
前往待发送同步信息的飞书群,添加自建机器人应用(如果还没有创建机器人,则可以完成下面的“逐步细分”后再进行此步骤操作),并在群管理设置中“谁可以在此群发言”设置为“所有群成员”(需群管理员权限)。
逐步细分
一、配置Zabbix应用凭证
新建应用凭证时,填入必填项后,点击创建并连接。
注意:如果仅使用该模版,ApiToken和Zabbix域名可以设置为任意值并创建连接都可以生效。
其中ApiToken是在Zabbix控制台》用户设置》APIToken创建,如下图:
Zabbix域名填入的是不需要携带页面路径参数,且公网可以访问的URL地址。例如仪表盘地址为,那么填入的地址为:
二、配置ZabbixURL
点击解析回调信息节点右侧的入参,在zabbix_url中填入Zabbix系统基础的URL,具体获取方法见上一步的描述。
三、配置飞书系应用的凭证
a.点击新建应用凭证,并在凭证创建页面点击新建飞书应用。
注:通过集成平台创建的飞书应用会自动提交发布申请,应用发布审核未通过时工作流运行会报错。
c.选择好凭证后,如果该凭证需要额外申请权限,可在下提示信息中点击配置应用凭证,一键提交配置申请。
四、配置飞书群ID
分别点击发送告警信息/发送恢复消息节点右侧的入参,在接收者id字段填入需要接收信息的群id(群id的获取方式参考。
五、发布集成流
完成工作流编辑后,点击发布,该工作流则变为生效状态。
常见问题
一、如何将不同的告警发送到不同的飞书群中?
方式一:在飞书集成平台创建多个集成流,每个集成流的回调地址都不同。然后在Zabbix系统中创建多个用户,每个用户指定一个不同的回调地址即可。
方式二:在飞书集成平台中引入判断逻辑,通过入参不同进行判断,发送到不同的消息群中。
二、如何在消息卡片中增加交互式操作?
如果需要增加交互式操作,首先需要新建一个交互式卡片,并增加交互操作(卡片介绍参考及)。
完成交互卡片开发后,把当前工作流中的消息卡片替换掉。
三、如何把消息卡片中的操作记录到多维表格中?
可以参考模版处理消息卡片的回调逻辑并做适当的调整。
四、如何定制告警卡片中的告警信息内容?
方式一:当前告警卡片中的告警信息取自Zabbix预置的宏{ALTER.MESSAGE},该信息支持用户在Zabbix的媒介及Action中进行定制。
在Feishu的媒介类型进入Messagetemplates中编辑消息内容,如下图所示。
在action配置中选择具体的配置,选定操作,在操作细节中选择自定义消息内容,可以按照需求进行定制。
方式二:通过工作流中的JavaScript脚本能力进行定制化处理,可以在工作流中选择解析回调信息节点,在入参页面,选择编辑JavaScriptCode进入编辑,按照自己的逻辑进行处理。
五、为什么告警消息没有发送到飞书
如果存在日志,并显示错误则可以按照错误提示原因进行排查,常见的问题有:Zabbix主机无法访问公网等。
如果存在日志并且日志为已送达,则可以在Anycross的运行日志中进行排查,常见的问题有:应用凭证配置错误、群ID配置错误等。如何处理可以参考前面的步骤检查一遍。
六、如何修改通知卡片的标题
进入工作流的编辑模式,在组装报警卡片和组装恢复卡片找到event_name参数,对该参数进行调整即可。
点击查看。若需要更多关于“Zabbix+飞书”模板的需求,欢迎与我们联系。