- Install the collectd of SignalFx monitoring daemon.
- Configure the basic plugins of collected.
- Configure the write_http plugin of collectd which can send metrics to SignalFx Inc.
This cookbook has been tested on Centos 5, 6, 7; Amazon Linux 1409, 1503; Ubuntu 1504, 1410, 1404
- attributes/default.rb - Basic attributes for collectd write_http plugin.
- attributes/SignalFx_rpm_repo.rb - SignalFx rpms names and links for centos and amazon linux.
- templates/default/collectd.conf.erb - Template to configure the collectd.conf file.
- templates/default/10-write_http-plugin.conf.erb - Template to configure the write_http plugin of collectd.
- templates/default/10-aggregation-cpu.conf.erb - Template to configure the CPU aggregation.
Three main recipes are provided:
- chef_install_configure_collectd - Install the SignalFx.rpm and newest release collectd of SignalFx Inc.
- chef_install_configure_collectd::config-collectd - Set up collectd.conf file.
- chef_install_configure_collectd::config-write_http - Configure the write_http plugin for collectd.
- Run chef_install_configure_collectd::default recipe which can check the operation system and install collectd packages.
- Run the chef_install_configure_collectd::config-collectd recipe which can set up collectd.conf file.
- Run the chef_install_configure_collectd::config-write_http recipe.
- Users can use the default Ingest_host URL to send metrics to SignalFx Inc, but users have to fill your API TOKEN.
- If users want use your own ingest host URL or ingest host parameters, you should rewrite attributes/default.rb defines their attributes. Example:
default["write_http"]["Ingest_host"] = "YOUR_INGEST_HOST"
default["write_http"]["API_TOKEN"] = "YOUR_API_TOKEN"
default["write_http"]["Ingest_host_parameters"]["YOUR_KEY1"] = "YOUR_VALUE1"
default["write_http"]["Ingest_host_parameters"]["YOUR_KEY2"] = "YOUR_VALUE2"
The configuration file (10-write_http-plugin.conf) is like:
LoadPlugin write_http
<Plugin "write_http">
<URL "YOUR_INGEST_HOST&YOUR_KEY1=YOUR_VALUE1&YOUR_KEY2=YOUR_VALUE2">
User "auth"
Password "YOUR_API_TOKEN"
Format "JSON"
</URL>
</Plugin>
Author:: Wentao Du ([email protected])
Copyright::2015, SignalFx, Inc.