Collectd codec plugin

edit
  • Plugin version: v3.1.0
  • Released on: 2021-08-04
  • Changelog

For other versions, see the Versioned plugin docs.

Getting Help

edit

For questions about the plugin, open a topic in the Discuss forums. For bugs or feature requests, open an issue in Github. For the list of Elastic supported plugins, please consult the Elastic Support Matrix.

Description

edit

Read events from the collectd binary protocol over the network via udp. See https://collectd.org/wiki/index.php/Binary_protocol

Configuration in your Logstash configuration file can be as simple as:

    input {
      udp {
        port => 25826
        buffer_size => 1452
        codec => collectd { }
      }
    }

A sample collectd.conf to send to Logstash might be:

    Hostname    "host.example.com"
    LoadPlugin interface
    LoadPlugin load
    LoadPlugin memory
    LoadPlugin network
    <Plugin interface>
        Interface "eth0"
        IgnoreSelected false
    </Plugin>
    <Plugin network>
        Server "10.0.0.1" "25826"
    </Plugin>

Be sure to replace 10.0.0.1 with the IP of your Logstash instance.

Collectd Codec configuration options

edit
Setting Input type Required

authfile

string

No

nan_handling

string, one of ["change_value", "warn", "drop"]

No

nan_tag

string

No

nan_value

number

No

prune_intervals

boolean

No

security_level

string, one of ["None", "Sign", "Encrypt"]

No

target

string

No

typesdb

array

No

 

authfile

edit
  • Value type is string
  • There is no default value for this setting.

Path to the authentication file. This file should have the same format as the AuthFile in collectd. You only need to set this option if the security_level is set to Sign or Encrypt

nan_handling

edit
  • Value can be any of: change_value, warn, drop
  • Default value is "change_value"

What to do when a value in the event is NaN (Not a Number)

  • change_value (default): Change the NaN to the value of the nan_value option and add nan_tag as a tag
  • warn: Change the NaN to the value of the nan_value option, print a warning to the log and add nan_tag as a tag
  • drop: Drop the event containing the NaN (this only drops the single event, not the whole packet)

nan_tag

edit
  • Value type is string
  • Default value is "_collectdNaN"

The tag to add to the event if a NaN value was found Set this to an empty string ('') if you don’t want to tag

nan_value

edit
  • Value type is number
  • Default value is 0

Only relevant when nan_handeling is set to change_value Change NaN to this configured value

prune_intervals

edit
  • Value type is boolean
  • Default value is true

Prune interval records. Defaults to true.

security_level

edit
  • Value can be any of: None, Sign, Encrypt
  • Default value is "None"

Security Level. Default is None. This setting mirrors the setting from the collectd Network plugin

target

edit
  • Value type is string
  • There is no default value for this setting.

Define the target field for placing the decoded values. If this setting is not set, data will be stored at the root (top level) of the event.

For example, if you want data to be put under the document field:

    input {
      udp {
        port => 12345
        codec => collectd {
          target => "[document]"
        }
      }
    }

typesdb

edit
  • Value type is array
  • There is no default value for this setting.

File path(s) to collectd types.db to use. The last matching pattern wins if you have identical pattern names in multiple files. If no types.db is provided the included types.db will be used (currently 5.4.0).