RRDTool - 获取时间范围

时间:2015-01-27 12:09:53

标签: forecasting rrdtool trending

我正在使用 RRDTool 在一个图表中绘制数据图表和预测趋势图(LSL)。
因此我正在调整相应的模板 目前我设定了这样的结束时间:

--end start+7d

当通过网站查看结果图时,我可以在右侧选择不同的时间范围:
自定义时间范围,概述,4小时,25小时,一周,一个月一年

我想要的是什么:
如果我选择4小时的时间范围,7天的预测是没有意义的。我想根据所选的时间范围计算结束时间。例如,我希望将来显示的时间段与所选时间范围的大小完全相同 基本上我想像这样定义我的结束时间:

--end start+(end-start)

这是不可能的,因为结束时间不能自己定义。

有没有办法在手动定义 end 之前提取所选的时间范围?我可以在PHP模板中计算start+(end-start)并在定义结束时间时插入它。

每一个帮助表示赞赏。

编辑: 我忘了提及我通过 PNP4Nagios 使用RRDTool。在谈到网站时,我指的是PNP4Nagios标准网络外观。默认情况下,通过软件包安装PNP4Nagios时会出货。

1 个答案:

答案 0 :(得分:1)

使用PNP4Nagios,您的自定义模板可用于定义所有图形定义 - 时间窗口除外,它被添加到$ opt []和$ def []中的参数列表中。因此,您无法轻易覆盖时间窗口' end'因为它已被定义为现在'通过PNP4Nagios(并且' start'已根据您在Web界面中选择的时间范围相对于结尾定义)。事实上,RRDTool相当强大,所以如果它看到重新定义了一个开始/结束,那么最后一个这样的定义通常优先......但这并不能解决你的问题。

我认为您尝试做的是1天图表(通常从'结束1天'结束于'现在')来自& #39;现在,1天'到现在+ 1天'这样你的预测线可以填补第二部分。这需要通过编辑PNP4Nagios代码来完成,这有点超出了这个答案的范围。

PNP4Nagios允许在config.php中定义标准时间范围;您还可以在调用图表时定义新的时间范围。这意味着您可以像这样实现所需的时间窗口:

pnp4nagios/graph?host=<hostname>&srv=<servicedesc>&start=-1day&end=+1day

...虽然这只是一次性的,但不会覆盖默认值。

PNP4Nagios中的当前视图配置不允许默认视图指定结束偏移量,仅指定起始偏移量。