Working dashboards tested on
Ubuntu 14.04/16.04
Collectd 5.4 and 5.5
Grafana 4.4.1
Graphite 0.9.15
Collector Configuration Details
/etc/collectd/collectd.conf :
FQDNLookup false
Interval 10
LoadPlugin network
LoadPlugin rrdtool
LoadPlugin cpu
LoadPlugin df
LoadPlugin interface
LoadPlugin load
LoadPlugin memory
LoadPlugin syslog
LoadPlugin tcpconns
LoadPlugin processes
<Plugin network>
server "zzz.com" "25826"
SecurityLevel none
</Plugin>
<Plugin rrdtool>
DataDir "/var/lib/collectd/rrd"
</Plugin>
<Plugin tcpconns>
LocalPort 80
LocalPort 443
LocalPort 2200
</Plugin>
<Plugin interface>
Interface "eth0"
Interface "lo"
Interface "venet0"
</Plugin>
<Plugin df>
MountPoint "/"
</Plugin>
Include "/etc/collectd/thresholds.conf"
Include "/etc/collectd/conf.d/*conf"
/etc/collectd/conf.d/apache.conf :
LoadPlugin apache
<Plugin processes>
Process "apache2"
</Plugin>
<Plugin tcpconns>
LocalPort 8080
</Plugin>
<Plugin "apache">
<Instance "apache">
URL "http://localhost:8080/server-status?auto"
</Instance>
</Plugin>
/etc/collectd/conf.d/disk.conf :
LoadPlugin disk
/etc/collectd/conf.d/graphite.conf :
LoadPlugin write_graphite
LoadPlugin aggregation
<Plugin write_graphite>
<Node "graphite">
Host "zzz.com"
Port "2003"
Protocol "tcp"
LogSendErrors true
Prefix "collectd."
EscapeCharacter "_"
SeparateInstances true
StoreRates true
AlwaysAppendDS false
</Node>
</Plugin>
<Plugin "aggregation">
<Aggregation>
Plugin "cpu"
Type "cpu"
GroupBy "Host"
GroupBy "TypeInstance"
CalculateAverage true
</Aggregation>
</Plugin>
<Plugin df>
ReportByDevice false
ReportReserved true
ReportInodes true
ValuesAbsolute true
ValuesPercentage true
ReportInodes true
</Plugin>
<Chain "PostCache">
<Rule>
<Match regex>
Plugin "^cpu$"
PluginInstance "^[0-9]+$"
</Match>
<Target write>
Plugin "aggregation"
</Target>
Target stop
</Rule>
Target "write"
</Chain>
/etc/collectd/conf.d/local.conf :
LoadPlugin swap
LoadPlugin Tail
<Plugin "tail">
<File "/var/log/nginx/error.log">
Instance nginx
<Match>
#Regex "(upstream prematurely closed |no live upstreams|upstream server temporarily|Connection reset by peer)"
Regex "(ddddd.*No such file or direc)"
DSType "DeriveInc"
Type "derive"
Instance "errors"
</Match>
</File>
</Plugin>
/etc/collectd/conf.d/mysql.conf :
LoadPlugin mysql
<Plugin processes>
Process "mysqld"
</Plugin>
<Plugin mysql>
<Database foo>
User "nagios"
Password ""
</Database>
</Plugin>
/etc/collectd/conf.d/nginx.conf :
LoadPlugin nginx
<Plugin "nginx">
URL "http://localhost/nginx_status"
</Plugin>