collectd, the system statistics collection daemon
collectd is a daemon which collects system performance statistics periodically and provides mechanisms to store the values in a variety of ways, for example in RRD-files.
What does collectd do?
collectd gathers statistics about
the system it is running on and stores this information. Those statistics can then be
used to find current performance bottlenecks (i. e. performance analysis)
and predict future system load (i. e. capacity planning). Or if you just
want pretty graphs of your private server and are fed up with some homegrown solution
you're at the right place, too ;).
Why collectd?
There are other free, open source projects that are similar to
collectd - a few links are listed on the
related sites page. So why should you use
collectd? There are some key differences we think set
collectd apart. For one, it's written in C for performance
and portability, allowing it to run on systems without scripting language or cron
daemon, such as embedded systems. At the same time it includes optimizations and
features to handle hundreds of thousands of data sets. It comes with
over
70 plugins which range from standard cases to very specialized and
advanced topics. It provides powerful networking features and is extensible in numerous
ways. Last but not least: collectd is actively developed
and supported and well documented. A more complete list of
features is available.
While collectd can do a lot for you and your administrative needs, there are limits to what it does:
- It does not generate graphs. It can write to
RRD-files, but it cannot generate graphs
from these files. There's a tiny
sample script
included in
contrib/, though. Take a look at kcollectd, an X frontend, and drraw, a very generic solution, though. More utility programs are listed on the related projects page. - Monitoring functionality has been added in version 4.3, but is so far limited to simple threshold checking. The document “Notifications and thresholds” describes collectd's monitoring concept and has some details on the limitations, too. Also, there's a plugin for Nagios, so it can use the values collected by collectd.
