我每5分钟使用Gmetric向Ganglia发送指标。但是,如果发送指标的cron任务不起作用,我希望Ganglia图上的指标值变为零,而它保持在其最后更新的值。有没有办法改变这种行为?
答案 0 :(得分:3)
请注意,在您的gmetric中使用'-d'标志(也称为DMAX)将使得gmond / gmetad在DMAX秒过后没有进行gmetric更新时会忘记度量完全。
因此,如果您直接运行Ganglia,该指标的.rrd文件和Ganglia图表将完全消失。
如果您想要保留指标的.rrd历史记录和/或您希望Ganglia图表保持不变(但将图表降为零),您可以在/ path /中编辑对rrdtool的调用/webserver/ganglia/graph.d/metric.php。
查看CDEF和VDEF的rrdtool文档,了解如何将条件合并到rrdtool调用中。在这些语句中,我相信您可以检查.rrd中最后一个度量标准的时间戳,然后任意绘制零值(或您想要的任何其他值)。或者,您可以更改您不信任的时间段等行的颜色或样式。
如果不可理解的话,rrdtool相当强大。要仔细阅读的最佳手册页是rrdgraph_data,rrdgraph_graph和rrdgraph。另请查看Ganglia提供的一些其他PHP脚本,以查看有关如何调用rrdtool的更多示例。答案 1 :(得分:0)
我相信这是rrdtool的一个特色。在获得新数据之前,它将继续显示“上次报告”的值。如果您希望度量标准值为0,则必须有一些实际上为该度量标准报告0值的进程。
尝试在gmetric调用中设置-d标志。这表示您发送的指标的最长生命周期(以秒为单位)。我相信gmond / gmetad会在经过一段时间后删除指标,之后你就不会在PHP应用程序中看到它。
这不是你要求的,但也许这是一个可以接受的选择?