在同一Postgres数据库中收集Collectd数据的两个时间间隔

时间:2016-09-29 08:34:27

标签: database postgresql intervals collectd

我想问一下是否有可能在Collectd工具中设置两个不同的采集间隔时间间隔。问题是我想从一个具有不同间隔的Postgres数据库收集数据(执行两个不同的选择查询),但Collectd只支持一个间隔。

我不能使用DBI插件,因为我有不同的间隔。

谢谢。

1 个答案:

答案 0 :(得分:1)

使用LoadPlugin

的块形式可以轻松实现这一点
Interval 10
LoadPlugin cpu
LoadPlugin memory
<LoadPlugin df>
  Interval 60
</LoadPlugin>

在此示例中,cpumemory插件继承全局10秒间隔,而df仅每60秒运行一次。

如果你想为同一个插件使用不同的间隔,那实际上取决于它。插件支持它(请参阅其手册页),或者您必须运行collectd的多个实例。

检查dbi插件的源代码,Database块中有undocumented config option,这应该允许您在数据库级别设置间隔。如果这样可行,但您仍然需要查询粒度,则可以通过为同一个底层数据库创建多个Database块来解决此限制:

<Database "plugin_instance1">
  Driver "mysql"
  Interval 120
  ...
</Database>