Skip to main content
本文介绍Zabbix新增触发器告警实时推送至乐维事件平台的完整流程,包含接口准备、脚本部署、媒介配置、告警验证及故障排查适用于 Zabbix 7.0.x 与乐维智能体 8.2.x,已在 Zabbix 7.0.32 环境完成真实告警链路验证。

一. 方案概览

本方案只负责 Zabbix → 乐维的告警事件同步:
  • 不同步 Zabbix 主机、模板等资源到乐维
  • 不反向采集 Zabbix 指标
  • 不自动补推历史告警
接口信息:

二. 准备乐维侧参数

需要获取 4 个参数: (1)LwReqUrl 一般为:
(2)apikey 在乐维服务器执行:
输出类似:
Zabbixduijieshijianpingt1104 将 YOUR_API_KEY 对应的实际值保存好,仅写入服务器本地配置文件,不要在文档、截图或群聊中扩散。 (3)appid 和 token 在乐维 Web 端进入:
推荐配置: Zbxsjpt0011104 保存后生成 appid 和 token。
apikey、appid、token 均属于敏感信息,只应写入 Zabbix Server 本地配置文件,不要在文档、截图、群聊或社区帖子中明文展示。

三. 部署 Zabbix Server 转发脚本

以下操作在 Zabbix Server 所在 Linux 服务器执行。

1. 确认脚本目录

本文以 /usr/lib/zabbix/alertscripts 为例。如实际路径不同,请替换命令。

2. 创建配置文件

写入以下内容,并替换为实际获取到的 4 个参数值:
Zabbixduijielwsj021104 设置配置文件权限:

3. 网络连通性验证

返回 code=0 表示入口可达。
返回 405 Method Not Allowed 属于正常现象,因为该接口只允许 POST 请求。 Zabbixdjsjpt041104

4. 检查运行依赖

先确认以下命令都存在,本文脚本才能直接使用:
本方案不依赖 Python、Python3 或 jq,适合无法额外安装组件的 Zabbix Server 环境。

5. 创建转发脚本

创建脚本。如果你的脚本目录不是 /usr/lib/zabbix/alertscripts,请替换为实际的 AlertScriptsPath:
写入以下完整内容:
设置属组、执行权限,并处理 Windows 换行符:

6.手动测试脚本

(1) 测试告警产生 event-id 不需要提前创建,它是由调用方传入乐维的事件唯一标识。手工测试时自行编写一个唯一值即可;如果还要测试恢复,必须复用同一个值。
Zabbixdjsjpt031104 成功标准:
  • 命令输出包含 SUCCESS mode=problem
  • 响应中 code=0
  • data.result 为操作成功
若输出 FAILED:
  • HTTP 状态非 200:优先检查网络、代理或接口地址
  • HTTP 状态为 200 但业务 code 非 0:优先检查签名、时间同步、appid/token 或乐维返回的 message
在乐维进入:
确认测试告警已经进入乐维。 Zabbixsjpt051104 (2)测试告警恢复 恢复测试必须复用告警产生阶段的同一个 event-id:
Zabbixsjpt061104 成功后确认乐维中对应告警已恢复。

四. Zabbix web端配置

1. 配置 Zabbix 报警媒介

进入“告警 → 媒介” (1) 创建“乐维-告警产生” 脚本参数必须一行参数名、一行参数值:
Zabbixsjpt071104
以下三点非常关键:
  1. 脚本名称不要写绝对路径
  2. 级别必须使用数字宏 {TRIGGER.NSEVERITY}
  3. 当前脚本不支持 --config=xxx 这类等号写法
(2) 创建“乐维-告警恢复” 脚本参数必须同样使用一行参数名、一行参数值:
Zabbixsjpt081104 告警产生和告警恢复必须使用同一个 {EVENT.ID},乐维通过该 ID 关联并恢复原始告警。 (3) 配置消息模板
Zabbix 7 的真实触发器通知在调用媒介前,会先校验媒介类型是否定义了对应消息模板。即使脚本参数已经单独配置,也必须给两个媒介补充消息模板;否则真实告警会失败,动作日志报错:
乐维-告警产生 进入:
Zabbixsjpt091104 乐维-告警恢复 进入:
Zabbixsjpt101104 消息模板用于满足 Zabbix 通知校验并保留动作日志信息;真正传给脚本的参数仍来自“脚本参数”中的 {EVENT.ID}、{TRIGGER.NAME} 等宏。 (4)测试媒介 媒介测试只能验证媒介和脚本调用,不能替代真实触发器动作验证。 媒介测试中的 event-id 可以自己编写唯一测试值;真实触发器告警由 Zabbix 自动传入 {EVENT.ID},两者互不影响。 在“乐维-告警产生”的测试弹窗中使用固定值:
再测试“乐维-告警恢复”:
两组测试均成功,且乐维中能产生并恢复测试告警,说明媒介调用链路正常。 Zabbixsjpt111104 Zabbixsjpt121104

2. 创建 Zabbix 用户组和用户

(1) 创建用户组 进入“用户 → 用户群组”,创建“乐维事件平台对接”。在“主机权限”页签中,为需要推送告警的主机组授予“读”权限。 Zbxsjpt1111104 Zbxsjpt110401
原则:触发器动作条件中包含哪些主机组,用户组就必须对这些主机组有读权限。
(2)创建用户 Zabbixsjpt151104 (3) 配置用户报警媒介 添加两个媒介: Zbxsjpt110403 Zbxsjpt110404
如果某个严重性未勾选,对应级别的真实告警不会推送。

3. 创建触发器动作

进入“告警 → 动作 → 触发器动作”,创建动作“推送告警到乐维事件平台”。 在“操作”页签中,需要同时添加:
  1. 操作:绑定“乐维-告警产生”,用于问题产生通知。
  2. 恢复操作:绑定“乐维-告警恢复”,用于问题恢复通知。
  3. 更新操作可暂不配置,不影响告警产生和恢复推送。
动作条件 建议先限定测试主机组,验证通过后逐个添加业务主机组。 可选条件:
该条件可减少信息类和未分类告警进入乐维。 Zbxsjpt110405 操作 Zbxsjpt110406 (3)恢复操作 Zbxsjpt110407 (4)启用动作 确认动作状态为“已启用”。

4. 处理内部动作

进入“告警 → 动作 → 内部动作”。 常见内部动作:
这些动作对应监控项不支持、LLD 规则异常、未知触发器等 Zabbix 内部事件,不是设备真实触发器告警。
  1. 如果内部动作原本处于停用状态,可以不修改原配置
  2. 如果后续启用内部动作,应将其“仅发送到”设置为邮件、企业微信等原有媒介,避免推送到乐维
  3. 乐维的两个媒介只建议被“推送告警到乐维事件平台”这个触发器动作引用

五. 真实告警验收

1. Zabbix 侧

进入“监测 → 问题”,确认告警存在。 再进入“告警 → 动作”或“报表 → 动作日志”,确认以下内容:
如果动作日志中已经显示“已发送”,但乐维原始告警中看不到事件,优先检查 Zabbix Server 到乐维 /backend_api 的网络连通性,再查看脚本返回的业务 code。

2. 乐维侧确认产生

进入:
按 Zabbix 主机名、IP 或触发器名称搜索,确认告警进入乐维。

3. 乐维侧确认恢复

等待 Zabbix 问题恢复后确认:
  1. Zabbix 动作日志中恢复操作已发送
  2. 恢复操作使用的媒介为 乐维-告警恢复
  3. 乐维中对应告警已恢复
告警产生和恢复均验证通过后,接入才算完成

六. 上线检查清单

下一步:让告警真正用起来🎯

告警进入乐维事件平台只是第一步。 您还可以配置告警分派、抑制、收敛和通知规则,让告警找对人、少重复、不漏处理,并在“我的告警”和“全部告警”中持续跟踪处理进度。📋 更多用法可以查看 乐维事件平台操作手册🔗
Last modified on November 4, 2026