collectd 5.6 and write_riemann plugin

238 views
Skip to first unread message

nina

unread,
Nov 18, 2016, 9:06:19 AM11/18/16
to Collectd-web Users
Hi

I installed the collectd 5.6 core as followed:

curl http://pkg.ci.collectd.org/pubkey.asc | sudo apt-key add -
echo "deb http://pkg.ci.collectd.org/deb/ trusty collectd-5.6" > /etc/apt/sources.list.d/collectd.list
apt-get update
apt-get upgrade -y
apt-get install -y build-essential \
   libtool \
   pkg-config \
   git \
   protobuf-c-compiler \
   autoconf \
   libjson-c-dev
cd riemann-c-client
git checkout tags/debian/riemann-c-client-1.9.1-1
autoreconf -i
./configure && make && make check && make install
apt-mark hold riemann-c-client
mkdir -p /etc/collectd/collectd.conf.d
apt-get install --no-install-recommends -y collectd-core


When I start the service with sudo service collectd start from the /etc/collectd I get the following error message:

 * Starting statistics collection and monitoring daemon collectd                                                                                                                                           
option = FQDNLookup;
value = true;
option = CollectInternalStats; value = true;
Created new plugin context.
collectd[32]: plugin_load: plugin "syslog" successfully loaded.
collectd[32]: type = syslog, key = LogLevel, value = info
collectd[32]: plugin_load: plugin "cpu" successfully loaded.
collectd[32]: plugin_load: plugin "df" successfully loaded.
collectd[32]: plugin_load: plugin "interface" successfully loaded.
collectd[32]: plugin_load: plugin "load" successfully loaded.
collectd[32]: plugin_load: plugin "memory" successfully loaded.
collectd[32]: plugin_load: plugin "statsd" successfully loaded.
collectd[32]: plugin_load: plugin "swap" successfully loaded.
collectd[32]: plugin_load: plugin "uptime" successfully loaded.
collectd[32]: plugin_load: Could not find plugin "write_riemann" in /usr/lib/collectd
collectd[32]: plugin_load: plugin "logfile" successfully loaded.
collectd[32]: There is a `Node' block within the configuration for the write_riemann plugin. The plugin either only expects "simple" configuration statements or wasn't loaded using `LoadPlugin'. Please check your configuration.
collectd[32]: Found a configuration for the `write_riemann' plugin, but the plugin isn't loaded or didn't register a configuration callback.
collectd[32]: Found a configuration for the `write_riemann' plugin, but the plugin isn't loaded or didn't register a configuration callback.
Error: Reading the config file failed!

When I go into /usr/lib/collectd the write_riemann plugin is indeed not there. When I copy the .so file from the collectd 5.5 installation to the directory it also doesn't work, same error.
Also when I look for it with locate it's not there.

Does anyone know how do I get the right write_riemann.so?
I also installed the default and full collectd 5.6 Version; same problem.
Here is my config:

# Config file for collectd(1).
#
# Some plugins need additional configuration and are disabled by default.
# Please read collectd.conf(5) for details.
#
# You should also read /usr/share/doc/collectd-core/README.Debian.plugins
# before enabling any more plugins.

##############################################################################
# Global                                                                     #
#----------------------------------------------------------------------------#
# Global settings for the daemon.                                            #
##############################################################################

#Hostname "localhost"
FQDNLookup true
#BaseDir "/var/lib/collectd"
#PluginDir "/usr/lib/collectd"
#TypesDB "/usr/share/collectd/types.db" "/etc/collectd/my_types.db"

#----------------------------------------------------------------------------#
# When enabled, plugins are loaded automatically with the default options    #
# when an appropriate <Plugin ...> block is encountered.                     #
# Disabled by default.                                                       #
#----------------------------------------------------------------------------#
#AutoLoadPlugin false

#----------------------------------------------------------------------------#
# Interval at which to query values. This may be overwritten on a per-plugin #
# base by using the 'Interval' option of the LoadPlugin block:               #
#   <LoadPlugin foo>                                                         #
#       Interval 60                                                          #
#   </LoadPlugin>                                                            #
#----------------------------------------------------------------------------#
#Interval 10

CollectInternalStats true

#Timeout 2
#ReadThreads 5
#WriteThreads 5

# Limit the size of the write queue. Default is no limit. Setting up a limit
# is recommended for servers handling a high volume of traffic.
#WriteQueueLimitHigh 1000000
#WriteQueueLimitLow   800000

##############################################################################
# Logging                                                                    #
#----------------------------------------------------------------------------#
# Plugins which provide logging functions should be loaded first, so log     #
# messages generated when loading or configuring other plugins can be        #
# accessed.                                                                  #
##############################################################################

LoadPlugin syslog

<Plugin syslog>
        LogLevel info
</Plugin>

##############################################################################
# LoadPlugin section                                                         #
#----------------------------------------------------------------------------#
# Specify what features to activate.                                         #
##############################################################################

LoadPlugin cpu
LoadPlugin df 
LoadPlugin interface
LoadPlugin load
LoadPlugin memory
LoadPlugin statsd
LoadPlugin swap
LoadPlugin uptime
LoadPlugin write_riemann
LoadPlugin logfile


##############################################################################
# Plugin configuration                                                       #
#----------------------------------------------------------------------------#
# In this section configuration stubs for each plugin are provided. A desc-  #
# ription of those options is available in the collectd.conf(5) manual page. #
##############################################################################

<Plugin cpu>
     ValuesPercentage true
     ReportByCpu true
</Plugin>

<Plugin interface>
     Interface "lo"
     IgnoreSelected true
</Plugin>

<Plugin memory>
     ValuesPercentage true
</Plugin>

<Plugin df>
     MountPoint "/"
     ValuesPercentage true
</Plugin>

<Plugin swap>
        ReportByDevice false
        ReportBytes true
        ValuesPercentage true
</Plugin>

<Plugin statsd>
        Host "localhost"
        Port 8125
        DeleteCounters false
        DeleteTimers   false
        DeleteGauges   false
        DeleteSets     false
        TimerPercentile 90.0
        TimerPercentile 95.0
        TimerPercentile 99.0
        TimerLower      false
        TimerUpper      false
        TimerSum        false
        TimerCount      false
</Plugin>

<Plugin write_riemann>
        <Node "example">
                Host "localhost"
                Port 5555
                Protocol UDP
                Batch true
                BatchMaxSize 8192
                StoreRates true
                AlwaysAppendDS false
                TTLFactor 2.0
                Notifications true
                CheckThresholds false
                EventServicePrefix ""
        </Node>
        Tag "foobar"
        Attribute "foo" "bar"
</Plugin>

<Plugin "logfile">
  LogLevel "info"
  File "/var/log/collectd.log"
  Timestamp true
</Plugin>

<Include "/etc/collectd/collectd.conf.d">
        Filter "*.conf"
</Include>




nina

unread,
Nov 21, 2016, 5:58:53 AM11/21/16
to Collectd-web Users
Did anyone manage to install write_riemann under collectd 5.6? If not I'd file an issue.

Rodrigo Ramos

unread,
Feb 15, 2017, 2:09:51 PM2/15/17
to Collectd-web Users
Hi Nina,

Surely this error is caused because you have not installed required dependencies by riemann plugin. I have compiled collectd with following steps (Centos).

(you have to add epel repos)

yum install protobuf-compiler protobuf-c protobuf-c-devel -y

yum install cpan -y

cpan ExtUtils::MakeMaker

yum install libtool-ltdl-devel.x86_64 -y

(Into your collectd source)

./configure --enable-write_riemann

(The above step must show something like 'riemann [yes]'. If it is true, you should compile :) )

make && make all install


Greetings!

Rodrigo Ramos

unread,
Feb 15, 2017, 2:33:22 PM2/15/17
to Collectd-web Users
The output of 'configure' looks like:

    write_kafka . . . . . no
    write_log . . . . . . yes
    write_mongodb . . . . no
    write_redis . . . . . no
    write_riemann . . . . yes
    write_sensu . . . . . yes
    write_tsdb  . . . . . yes
    xmms  . . . . . . . . no
    zfs_arc . . . . . . . yes
    zookeeper . . . . . . yes


This means that your plugin will be in your collectd directory.
Reply all
Reply to author
Forward
0 new messages