Telegraf as collectd forwarder?

telegraf
#1

Hi there, I’m using telegraf to receive collectd streams and output to InfluxDB.

Is it possible to use telegraf as a collectd binary forwarder? The reason I’m asking is the source data generator sending collectd binary stream only has one output destination that can be configured and I need to send the raw collectd stream to another destination, so I was hoping to use telegraf as a forwarder.

I’m using this as the input - just wondering if there was a way to pass this stream out in original collectd format.

# # Generic socket listener capable of handling multiple socket types.
[[inputs.socket_listener]]
#  Receive collectd stats from VCS devices
service_address = "udp://0.0.0.0:25826"
#
#  ## Data format to consume.
#  ## Each data format has its own unique set of configuration options, read
#  ## more about them here:
#  ## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
data_format = "collectd"

#  ## Authentication file for cryptographic security levels
#  ## collectd_auth_file = "/etc/collectd/auth_file"
#  ## One of none (default), sign, or encrypt
#  ## collectd_security_level = "encrypt"
#  ## Path of to TypesDB specifications
collectd_typesdb = ["/usr/share/collectd/types.db"]
  [inputs.socket_listener.tags]
    source = "prodvcs"
#2

Hi @sgreszcz,

Unfortunately Telegraf doesn’t support collectd binary protocol as an output format, so this use case isn’t possible. Only Graphite, InfluxDB line protocol, and JSON are currently supported.