我有多个 RRD 数据库,每个数据库都包含从不同位置观察到的关于服务可用性的不完整数据。他们只是记录100
服务是启动还是0
关闭。
我想制作一个图表,显示该服务是否可以从任何位置获得,只需检查我是否在相关时间段的一个 RRD 中有任何数据。
我正在尝试使用 CDEF 来执行此操作,该 CDEF 使用 MAXNAN 来查找我的平均数据源的最大值 - 这是一个简化的示例:
rrdtool graph /tmp/graph.png -a PNG \
--start=1427213255 \
--end=1427224055 \
--upper-limit=100 \
--lower-limit=0 \
--rigid \
DEF:d0=/tmp/location1.rrd:available:AVERAGE \
DEF:d1=/tmp/location2.rrd:available:AVERAGE \
CDEF:agg=d0,d1,MAXNAN \
AREA:agg#00DD00:availability
这会产生错误
ERROR: invalid rpn expression in: d0,d1,MAXNAN
我哪里错了?
通常,我会写一个 StackOverflow 问题并在提交之前发现答案。在这种情况下,答案就在之后。MAXNAN 是在 rrdtool 1.4.9 中添加的,我使用的是 1.4.7
我可以做一些适合我用例的事情
在这里,我只是将 NaN 视为 0,并取最大结果。