基于一周旧数据的zabbix触发器
zabbix trigger based on one week old data
我是 Zabbix 的新手。我试过触发器。我能够弄清楚的是它可以在某个恒定阈值上设置触发器。我需要的是它应该与我刚好一周前的那个确切时间的数据进行比较,如果变化超过某个特定的百分比阈值则触发警报。
我已经尝试了一些步骤,比如将当前数据和一周前的数据保存在外部数据库中,然后使用 zabbix ODBC 驱动程序查询该数据,但是当我无法比较两个项目时我被卡住了。
如果我在陈述我的问题时可能会感到困惑。让我知道,我会更清楚我的问题
你可以为此使用 last() 函数。
例如,如果我们每 5 分钟对数据进行一次采样,并且我们想将最后一个值与 10 分钟前的值进行比较,我们可以使用
(item1.last(#1)/item2.last(#3)) > 1.2 - 如果最新值比 10 分钟前的值大 20%,这将触发警报。
从文档中我不太清楚你是否可以使用秒或者它们是否会被忽略(例如 item.last(60) - 获取 1 分钟前的值),但你可以在此处阅读有关最后一个功能的更多信息:
https://www.zabbix.com/documentation/2.4/manual/appendix/triggers/functions
我是 Zabbix 的新手。我试过触发器。我能够弄清楚的是它可以在某个恒定阈值上设置触发器。我需要的是它应该与我刚好一周前的那个确切时间的数据进行比较,如果变化超过某个特定的百分比阈值则触发警报。
我已经尝试了一些步骤,比如将当前数据和一周前的数据保存在外部数据库中,然后使用 zabbix ODBC 驱动程序查询该数据,但是当我无法比较两个项目时我被卡住了。
如果我在陈述我的问题时可能会感到困惑。让我知道,我会更清楚我的问题
你可以为此使用 last() 函数。
例如,如果我们每 5 分钟对数据进行一次采样,并且我们想将最后一个值与 10 分钟前的值进行比较,我们可以使用 (item1.last(#1)/item2.last(#3)) > 1.2 - 如果最新值比 10 分钟前的值大 20%,这将触发警报。
从文档中我不太清楚你是否可以使用秒或者它们是否会被忽略(例如 item.last(60) - 获取 1 分钟前的值),但你可以在此处阅读有关最后一个功能的更多信息: https://www.zabbix.com/documentation/2.4/manual/appendix/triggers/functions