Output filter plugin Output filter plugin to rewrite Collectd JSON output to be inserted into InfluxDB

Rewrites the message coming from Collectd to make it compatible with the way InfluxDB stores data in series.

Installation

Use RubyGems:

gem install fluent-plugin-collectd-influxdb

Configuration

<match pattern>
  type collectd_influxdb
</match>

If following record is passed:

[{"time" => 1000, "host" => 'host_v', "interval" => 5, "plugin" => 'plugin_v', "plugin_instance" => 'plugin_instance_v', "type" => 'type_v', "type_instance" => 'type_instance_v', "values" => ['v1', 'v2'], "dsnames" => ['n1', 'n2'], "dstypes" => ['t1', 't2']}]

then you got new record like below:

[{"n1"=>"v1", "n2"=>"v2"}]

and the record tag will be changed to

host_v.plugin_v.plugin_instance_v.type_v.type_instance_v

Empty values in "plugin", "plugin_instance", "type" or "type_instance" will not be copied into the new tag name

WARNING

  • This plugin was written to deal with a specific use-case, might not be the best fit for everyone. If you need more configurability/features, create a PR
AuthorGiuseppe Iannello
LicenseMIT License