Rrdtool RRD图形-按值更改线条颜色
我有一个包含以下数据的RRD数据库:Rrdtool RRD图形-按值更改线条颜色,rrdtool,rrd,Rrdtool,Rrd,我有一个包含以下数据的RRD数据库: "DS:pkts_transmitted:GAUGE:120:0:U", "DS:pkts_received:GAUGE:120:0:U", "DS:pkts_lost:GAUGE:120:0:U", "DS:rtt_min:GAUGE:120:0:U", "DS:rtt_avg:GAUGE:120:0:U", "DS:rtt_max:GAUGE:120:0:U", 如果我丢失任何包裹,我希望平均线改变颜色
"DS:pkts_transmitted:GAUGE:120:0:U",
"DS:pkts_received:GAUGE:120:0:U",
"DS:pkts_lost:GAUGE:120:0:U",
"DS:rtt_min:GAUGE:120:0:U",
"DS:rtt_avg:GAUGE:120:0:U",
"DS:rtt_max:GAUGE:120:0:U",
如果我丢失任何包裹,我希望平均线改变颜色
例如,如果我丢失5个数据包,则将线设为蓝色,如果我丢失10个数据包,则将线设为红色
我看到有人这样做,但我阅读了文档,却找不到如何做到这一点。实现这一点的方法是实际定义多行(每种颜色一行),并通过计算隐藏您在任何时候都不想看到的行 例如,假设我们有一个RRD和两个DSs:
DS:x:GAUGE:60:0:U
DS:y:GAUGE:60:0:1
现在,如果y
为0,我们想用红色显示x
的行,如果为1,则用蓝色显示。为此,我们创建两个计算值,x1
和x2
CDEF:x1=y,0,EQ,x,UNKN,IF
CDEF:x2=y,1,EQ,x,UNKN,IF
因此,如果y=0
和x2
如果y=1
,则x1
处于活动状态。是的,这可以简化,但我以这个为例展示它
现在,我们可以使用以下内容制作线条:
LINE:x1#ff0000:MyLine
LINE:x2#0000ff
请注意,第二行不需要图例。现在,该行将根据y
度量的值而改变颜色,因为在任何时候,另一行都将UNKN
,因此不会显示
当然,您可以扩展此功能,使其具有多种颜色和更复杂的阈值。谢谢您,我做的或多或少都是相同的。我有7个def项,通过轮询器,只需将值放在需要着色的位置,其他的值为nan。