Collectd installation: Difference between revisions
No edit summary |
No edit summary |
||
| Line 184: | Line 184: | ||
</Type> | </Type> | ||
</Plugin> | </Plugin> | ||
</Plugin> | |||
* for notify's logging in syslog (can be set together with notify_email) | |||
<Plugin syslog> | |||
# LogLevel info | |||
NotifyLevel "OKAY" | |||
</Plugin> | </Plugin> | ||
Revision as of 17:32, 14 September 2018
Centos
Httpd You need to have installed web server with enabled perl and CGI scripts processing (for be possible to look at results using web-browser). This how to doesn't cover web server configuation.
Install collectd packages from epel repositories:
yum install epel-release yum install collectd yum install collectd-web
Atention: by default is web-collection accessible only from localhost, see config of httpd (search for 'Deny from' and 'Allow from' and change it:
vim /etc/httpd/conf.d/collectd.conf service httpd restart
You can now access collectd collections entering this url to a browser:
http://server_ip/collectd/bin/index.cgi
Debian
Apache2
For ability checking results using browser you need web server with enabled CGI and perl scripts processing.
Enable apache2 modules
perl cgi
using command a2enmod .
Add CGI handler into apache processing (in mime.conf uncomment)
AddHandler cgi-script .cgi
Define +ExecCGI option under directory where will be collctd's GUI link placed
<Directory "/var/www/html/abcdefg/collectd"> Options +ExecCGI </Directory>
Debian7
Install collectd packages from debian main repositories:
apt-get install collectd libregexp-common-perl libconfig-general-perl librrds-perl
Create link from default www directory to collectd's doc.
ln -s /usr/share/doc/collectd-core/examples/collection3/ /var/www/collectd
Restart apache web-server (you should have cgid mod enabled "a2enmod cgid")
/etc/init.d/apache2 restart
You can now access using browser:
http://server_ip/collectd/bin/index.cgi
Debian8
Install collectd packages from debian main repositories:
apt-get install collectd libregexp-common-perl libconfig-general-perl librrds-perl
Create link from default www directory to collectd's collections.
ln -s /usr/share/doc/collectd-core/examples/collection3/ /var/www/html/collectd
Restart apache
service apache2 restart
You can now access using browser:
http://server_ip/collectd/bin/index.cgi
Tail config example
LoadPlugin tail
<Plugin tail>
<File "/var/log/messages">
Instance "voipmonitor"
Interval 30
<Match>
Regex "calls.([0-9]+),"
DSType "GaugeAverage"
Type "count"
Instance "Calls"
</Match>
<Match>
Regex "PS\\[C:([0-9]+)"
DSType "GaugeAverage"
Type "count"
Instance "PS-C"
</Match>
<Match>
Regex "PS\\[.* R:([0-9]+)"
DSType "GaugeAverage"
Type "count"
Instance "PS-R"
</Match>
<Match>
Regex "PS\\[.* A:([0-9]+)"
DSType "GaugeAverage"
Type "count"
Instance "PS-a"
</Match>
<Match>
Regex "heap\\[([0-9]+)"
DSType "GaugeAverage"
Type "count"
Instance "heap"
</Match>
<Match>
Regex "VSZ\\[([0-9]+)"
DSType "GaugeAverage"
Type "count"
Instance "rss"
</Match>
</File>
</Plugin>
Sensor plugin configuration
- plugin contains pcie temperature, cpu temperature, etc.
- install lm sensor package
- run sensors-detect binary to detect sensors
- add an example to the config
LoadPlugin sensors
<Plugin sensors>
SensorConfigFile "/etc/sensors3.conf"
</Plugin>
Disk space plugin
- simple setting for percentage usage
LoadPlugin df
<Plugin df>
# Device "/dev/hda1"
# Device "192.168.0.2:/mnt/nfs"
# MountPoint "/home"
# FSType "ext3"
# IgnoreSelected false
# ReportByDevice false
# ReportInodes false
ValuesAbsolute false
ValuesPercentage true
</Plugin>
Scale stored value
- enable these two plugins
LoadPlugin match_regex LoadPlugin target_scale
- add a filter (example is for rss count)
<Chain "PreCache">
<Rule>
<Match "regex">
Plugin "^tail$"
TypeInstance "^rss$"
Invert false
</Match>
<Target "scale">
Factor 1048576
</Target>
</Rule>
</Chain>
Threshold and notify setting
- on RH you need to install collectd-notify_email.x86_64 package. On debian it's in collectd-core package.
- example for df setting from the example above
LoadPlugin "notify_email" <Plugin "notify_email"> From "collectd-datora@localhost" Recipient "milan.kocian@voipmonitor.org" Recipient "festr@voipmonitor.org" </Plugin>
LoadPlugin "threshold"
<Plugin threshold>
<Plugin "df">
Instance "root"
<Type "percent_bytes-used">
WarningMax 75
</Type>
</Plugin>
</Plugin>
- for notify's logging in syslog (can be set together with notify_email)
<Plugin syslog>
# LogLevel info
NotifyLevel "OKAY"
</Plugin>