Zabbix文本触发配置:仅展示异常项部分内容
用web.page.get配置设备异常告警,仅展示异常条目详情
没问题,完全可以用web.page.get来实现你想要的效果!核心思路是结合正则匹配提取和触发器的告警内容自定义配置,下面给你一步步拆解怎么操作:
第一步:编写精准的正则表达式
针对你提供的JSON格式设备数据,我们需要一个能捕获"Not Running"状态前约25个字符(包含设备ID等关键信息)的正则。推荐用这个:(.{0,25})"status":"Not Running"这个正则会匹配"Not Running"前面最多25个字符的内容,并把这部分作为捕获组提取出来——刚好能覆盖你需要的设备标识信息。
第二步:配置web.page.get触发器
接下来在监控工具里完成这几个配置:- 先设置好要监控的网页URL,确保
web.page.get能正常拉取页面的JSON内容。 - 在触发条件里,设置为页面内容匹配上述正则表达式——这样只有当存在"Not Running"状态的设备时,才会触发告警,避免误报。
- 重点在告警消息模板:引用正则捕获到的内容(一般用
$1来指代第一个捕获组,具体语法看你用的监控工具),把异常信息精准展示出来。比如告警消息可以这么写:
这样告警里就只会出现有问题的设备条目,而不是整个页面的海量数据。发现异常设备:$1"status":"Not Running"
- 先设置好要监控的网页URL,确保
先验证正则再上线
建议你先用正则测试工具把页面的JSON内容放进去,验证一下这个正则是不是能准确捕获到你需要的前缀内容,确保前25个字符包含了arrisId这类能定位设备的关键信息,避免告警内容无效。
内容的提问来源于stack exchange,提问作者Ringo Davis




