在同一个Postgres数据库上收集collect中数据的两个间隔



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

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

谢谢。

这可以通过使用LoadPlugin的块形式轻松实现:

Interval 10
LoadPlugin cpu
LoadPlugin memory
<LoadPlugin df>
  Interval 60
</LoadPlugin>

在这个例子中,cpumemory插件继承全局的10秒间隔,而df只会每60秒运行一次。

如果你想为同一个插件设置不同的时间间隔,那就得看情况了。要么插件支持它(参见其手册页),要么你必须运行多个collectd实例。

检查dbi插件的源代码,在Database块中有一个未记录的配置选项,它应该允许您在db级别设置间隔。如果这可以工作,但您仍然需要在查询粒度上使用它,您可以通过为相同的底层db创建多个Database块来解决此限制:

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

最新更新