简体   繁体   English

Zenoss中的RRD图显示了较大时间范围内的NaN

[英]RRD graphs in Zenoss showing NaN on large time ranges

I am trying to create COMMAND JSON datasource to monitor some values, for example from such script: 我正在尝试创建COMMAND JSON数据源来监视某些值,例如从以下脚本中进行监视:

print json.dumps({
    'values': {
        '': {'random': random()},
    },
    'events': []
})

And when i just starting zencommand, appropriate rrd file is created, but cur, avg and max values on graph shows me NaN. 当我刚开始使用zencommand时,会创建适当的rrd文件,但是图表上的cur,avg和max值显示为NaN。 That NaNs is replaced by actual numbers when I zoom in to a current point in time, which is not very far from start of monitoring. 当我放大到当前时间点时,NaN会由实际数字代替,离开始监视不太远。

Why it don't show correct min, max and avg values before I zoom in? 为什么在放大之前无法显示正确的最小值,最大值和平均值? Is that somehow related to consolidation? 这与合并有关系吗? I read http://www.vandenbogaerdt.nl/rrdtool/min-avg-max.php , but that page don't tell anything about NaN values. 我阅读了http://www.vandenbogaerdt.nl/rrdtool/min-avg-max.php ,但是该页面没有提供有关NaN值的任何信息。

And is any way to quicker zoom in to the current timestamp to see some data faster? 有什么方法可以更快地放大当前时间戳以更快地查看一些数据吗?

When you are zoomed out, you'll be looking at the lower-granularity RRAs (Round Robin Archives). 缩小时,您会看到较低粒度的RRA(Round Robin档案)。 These do not get populated until enough data are in the higher-granularity ones; 在足够高粒度的数据中填充这些数据之前,不会填充这些数据。 so, for example, if you have a 5min-granularity RRA, a 1hr-granularity RRA, and a 1day-granularity RRA, and have collected data for the last 45min, then you will see ~8 data points in your 'daily' graph (which uses the 5min RRA), but nothing in your 'monthly' (which will use the 1hr RRA) or your 'yearly' (which uses the 1day RRA). 因此,例如,如果您有一个5分钟粒度RRA,一个1小时粒度RRA和一个1天粒度RRA,并且在过去45分钟内收集了数据,那么您将在“每日”图中看到约8个数据点(使用5分钟RRA),但您的“每月”(将使用1小时RRA)或“每年”(使用1天RRA)中没有任何内容。

This applies to any RRA; 这适用于任何RRA; AVG, LAST, MAX, etc. Until the consolidated time window is complete, and the full complement of Primary Data Points has been collected for consolidation, the consolidated data point value is undefined. AVG,LAST,MAX等。在合并时间窗口完成且收集了完整的主数据点以进行合并之前,合并数据点的值尚未定义。

RRDTool picks the RRA to use based on the requested graph data width and pixel width, as well as the requested consolidation functions. RRDTool根据请求的图形数据宽度和像素宽度以及请求的合并功能选择要使用的RRA。 Although there are ways to force RRDtool to use a higher-granularity RRA than it needs to, and to consolidate on the fly, this is inefficient and slow. 尽管有多种方法可以强制RRDtool使用比其需要的粒度更高的RRA,并且可以即时进行整合,但这是低效且缓慢的。 It also makes having the lower-granularity RRA pointless and throws away one of the major benefits of RRDtool (that it performs consolidation at update time making graphing faster) 这也使较低粒度的RRA毫无意义,并丢弃了RRDtool的主要优点之一(它在更新时执行合并,从而加快了绘制速度)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM