我是 zabbix 新手,我创建了一个每半小时运行一次的特定脚本。如果一切正常,此脚本将返回(通过 sys.exit(X))0,如果警告,则返回 1,如果严重,则返回 2;如果未知,则返回 3(我按照 Nagios/centreon 的风格构思,我有这方面的经验)。
我可以通过 su - zabbix python3 /usr/lib/zabbix/externalscripts/NBackupWD.py ignorearg -c companyname 执行它
如果有警告或严重问题,则输出为文本+退出代码;如果没有问题,则仅输出退出代码。
因此我创建了一个名为“备份”的项目,其键为“NBackupWD.py[-c companyname]”,但从现在开始,我迷失了。
如何让 zabbix 执行它并根据该返回代码更改触发器状态?我知道我需要创建一个项目,然后将其链接到触发器(如何?),文档非常不清楚,没有提到如何调整返回代码以触发相应的状态(如果脚本发送退出代码 2,则发出警告.. 就像在 nagios 上一样...)
另外,您能否指出如何在界面中添加它?(如果可能的话,请附带屏幕截图)因为在 Google 上,许多指示都是针对 2.4.2 之前的版本,而据我了解,此版本的脚本行为发生了变化。
谢谢你!
答案1
如果您创建了一件物品,那么您就拥有一把钥匙。假设您的钥匙是:
backup.wd
您可以使用此键来创建触发器。如果您处于配置->项目屏幕上,则可以使用向导为尚未有触发器的项目创建触发器。在弹出屏幕中,您可以提供表达式。
设置完成后,您需要确保在代理上的 zabbix_agentd.conf 中创建了 UserParamater。这里您再次需要密钥。创建一个 UserParameter,如下所示:
UserParameter=backup.wd, python3 /usr/lib/zabbix/externalscripts/NBackupWD.py ignoredarg -c companyname
您必须确保脚本在代理上。重新启动代理,这应该可以解决问题。
还要确保您创建的项目能够处理给定的输出。