Collectd Listener
Overview
This integration is a service input plugin that listens for messages from collectd’s network plugin.
This integration is only available for Linux platforms.
Setup
The collectd
monitoring is accomplished by bridge-stream
plugin which is included with the SolarWinds Snap Agent by default. Follow the directions below to enable it for an agent instance.
The bridge-stream
plugin utilize Telegraf Socket Listener plugin.
Prerequisites
The Collectd Listener expects that you have collectd installed on your system. Here’s an example of a configuration stored in /etc/collectd/collectd.conf
:
FQDNLookup true
Interval 60
LoadPlugin logfile
LoadPlugin syslog
<Plugin logfile>
LogLevel "info"
File "/var/log/collectd.log"
Timestamp true
PrintSeverity false
</Plugin>
<Plugin syslog>
LogLevel info
</Plugin>
##############################################################################
# LoadPlugin section #
##############################################################################
LoadPlugin cpu
LoadPlugin disk
LoadPlugin memory
LoadPlugin network
##############################################################################
# Plugin configuration #
##############################################################################
<Plugin "network">
Server "127.0.0.1" "28527"
</Plugin>
<Include "/etc/collectd/collectd.conf.d">
Filter "*.conf"
</Include>
This example collects cpu, disk, and memory metrics and sends them via UDP to the IP and port specified in the network section. After making changes to collectd.conf, make sure you restart the service with:
sudo service collectd restart
Configuration
The agent provides an example task file to help you get started quickly, but requires you to provide the correct settings for your Collectd installation. To enable the task:
-
Make a copy of the Collectd example task file
/opt/SolarWinds/Snap/etc/tasks-autoload.d/task-bridge-collectd_listener.yaml.example
, renaming it to/opt/SolarWinds/Snap/etc/tasks-autoload.d/task-bridge-collectd_listener.yaml
:sudo cp -p /opt/SolarWinds/Snap/etc/tasks-autoload.d/task-bridge-collectd_listener.yaml.example /opt/SolarWinds/Snap/etc/tasks-autoload.d/task-bridge-collectd_listener.yaml
-
Edit the task file with settings specific to your Collectd install:
--- version: 2 schedule: type: "streaming" plugins: - plugin_name: bridge-stream config: socket_listener: ## URL to listen on. Collectd's network plugin uses UDP. # service_address: "udp://:8094" # service_address: "udp4://:8094" # service_address: "udp6://:8094" ## Maximum socket buffer size in bytes. ## For stream sockets, once the buffer fills up, the sender will start backing up. ## For datagram sockets, once the buffer fills up, metrics will start dropping. ## Defaults to the OS default. # read_buffer_size: 65535 ## 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" ## Metric name prefix bridge_prefix: "collectd" data_format: "collectd" tags: /: collector_plugin: "collectd_listener" publish: - plugin_name: publisher-appoptics
-
Restart the agent:
sudo service swisnapd restart
-
Enable the Collectd integration in AppOptics
On the Integrations Page you will see Collectd integration available if the previous steps were successful. It may take a couple minutes before the Collectd integration is identified. Select the Collectd integration to open the configuration menu in the UI, and enable it. If you do not see it, see Troubleshooting Linux.
Testing Integration
To check if and what metrics can be collected with given configuration, run bridge-stream
plugin in debug mode:
/opt/SolarWinds/Snap/bin/snap-plugin-collector-bridge-stream --debug-mode --plugin-config "{\"socket_listener\": {\"service_address\": \"udp://:8094\", \"bridge_prefix\": \"collectd\", \"data_format\": \"collectd\"}}"
Metrics and Tags
The collected metrics will be prefixed with collectd.*
in AppOptics (or the configured value for bridge_prefix
on the task configuration).
For more information read the Telegraf Socket Listener Service Input Plugin docs.
Navigation Notice: When the APM Integrated Experience is enabled, AppOptics shares a common navigation and enhanced feature set with other integrated experience products. How you navigate AppOptics and access its features may vary from these instructions.
The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the scripts or documentation.