0

I want to have a central collectd server which gathers statistics from other servers, stores it to RRD files and forwards it to logstash.

here are the relevant parts of /etc/collectd/collectd.conf on the central server:

<Plugin network>
    <Listen "0.0.0.0" "25826">
    </Listen>
</Plugin>

<Plugin network>
    <Server "192.168.1.24" "25827">
    </Server>
</Plugin>

<Plugin rrdtool>
    DataDir "/var/lib/collectd/rrd"
    CacheTimeout 120
    CacheFlush 900
</Plugin>

The server successfully receives metrics from the other servers and stores them in RRD files. ls /var/lib/collectd/rrd shows that this part works well.

However, only server's data is send to logstash. Data which is transmitted through the network from other machines to this server is not resent to logstash. Indeed, according to collectd mailing list:

[T]he values which have been sent over the network plugin are being flagged, to avoid multiple possibly circular retransmissions.

Is there a way to indicate that I do want the values to be retransmitted?

If not, what should I do instead? Should I send data directly to logstash from every machine?

Arseni Mourzenko
  • 2,275
  • 5
  • 28
  • 41

1 Answers1

1

As stated in the manpage, you need to set Forward true in the central server's network plugin block:

If set to true, write packets that were received via the network plugin to the sending sockets.

Arseni Mourzenko
  • 2,275
  • 5
  • 28
  • 41
faxmodem
  • 251
  • 1
  • 4