A salt formula that installs and configures collectd. The system statistics collection daemon.
Note
See the full Salt Formulas installation and usage instructions.
collectd
collectd.service
collectd.apache
collectd.dbi
collectd.csv
collectd.df
collectd.disk
collectd.elasticsearch
collectd.ethstat
collectd.interface
collectd.java
collectd.modules
collectd.mysql
collectd.network
collectd.ntpd
collectd.packages
collectd.postgresql
collectd.processes
collectd.powerdns
collectd.syslog
collectd.tail
collectd.curl_json
collectd.curl_xml
collectd.python
collectd.vmem
collectd.librato
Installs the collectd package, and starts the associated collectd service.
Metastate used to include service into respective plugin states, included in collectd
state.
Enables and configures the [apache](https://collectd.org/wiki/index.php/Plugin:Apache) plugin. All common parameters are supported, so pass something like
apache: instances: - name: 'human-readable-name' url: 'http://localhost/server-status?auto' user: 'user' pass: 'your-password'
Only name
and url
are required.
Enables and configures the dbi plugin. It's used for quering databases with libdbi.
Refer to collectd.conf(5) manpage for details
and pillar.example
to see how values should be populated.
Beware this plugin may need additional packages installed on your system to run properly.
Enables and configures the csv write plugin.
Enables and configures the df plugin.
Enables and configures the disk plugin.
Enables and configures the elasticsearch plugin
Enables and configures the ethstat plugin (please note there is a possible bug in the debian package).
Enables and configures the interface plugin.
Enables and configures the java plugin. If enabled it will also collect tomcat catalina metrics.
Requires the installation of JDK.
Pillar values used under collectd.plugins.java, an example
collectd: plugins: java: host: localhost port: 39999 user: 'someuser' (optional) group: 'someuser' (optional) lib: '/some/file' (optional) tomcat: true (optional)
This state helps distributing collectd external modules written in various languages (see [python](https://collectd.org/wiki/index.php/Plugin:Python) or [perl](https://collectd.org/wiki/index.php/Plugin:Perl) for example).
Sample usage:
- Include
collectd.modules
in your topfile. - Create collectd/modules/files folder in your states.
- Put modules you need in that folder.
- Modules will be put in
collectd.moduledirconfig
folder.
Enables and configures the mysql plugin. Needs refinement.
Enables and configures the network plugin.
Enables and configures the ntpd plugin.
This state is used to install OS packages collectd plugins depend on.
Enables and configures the postgresql plugin. Needs refinement.
Enables and configures the processes plugin
Enables and configures the powerdns plugin.
Enables and configures the syslog plugin.
Enables and configures the tail plugin.
Enables and configures the curl_json plugin.
Enables and configures the curl_xml plugin.
Enables and configures the python plugin, which allows executiong arbitrary python scripts.
Enables and configures the vmem plugin.
Enables and configures write_http plugin for reporting to Librato
Create a custom state file (for example collectd-custom.sls
) that includes the plugins you want and the base state.
include: - collectd - collectd.disk - collectd.syslog
Then in your topfile:
'servername': - collectd-custom
Or if you don't mind having long lists in your topfile, just add whatever plugins you want and the base state.
'servername': - collectd - collectd.disk - collectd.syslog
Or you can combine both - default plugins in custom state and specific in topfile.
'apache-server': - collectd-custom - collectd.apache