我正在执行一个外部检查,它返回给我:OK 1 2 0 8(这个值会改变每次检查)
有谁知道如何将这些值分成项目?
示例:
External check status: OK
In use: 1
Busy: 2
Problem: 0
Free: 8
以上每一项都是一个项目。
答案 0 :(得分:1)
不幸的是,目前无法使用标准Zabbix方法将接收到的字符串值解构为部件,用于所有项目类型。
但是,某些项目(如vfs.file.regexp[]
)支持应用正则表达式并捕获其输出(有关详细信息,请参阅documentation)。在这种情况下,您可以将脚本的输出写入文件,然后创建五个项目,大致如下:
vfs.file.regexp[/tmp/file.txt,^(\w+),,,,\1]
vfs.file.regexp[/tmp/file.txt,^\w+ (\w+),,,,\1]
vfs.file.regexp[/tmp/file.txt,^\w+ \w+ (\w+),,,,\1]
vfs.file.regexp[/tmp/file.txt,^\w+ \w+ \w+ (\w+),,,,\1]
vfs.file.regexp[/tmp/file.txt,^\w+ \w+ \w+ \w+ (\w+),,,,\1]