Code

cleanup
[collectd.git] / README
1  collectd - System information collection daemon
2 =================================================
3 http://verplant.org/collectd/
5 About
6 -----
8   collectd is a small daemon which collects statistics about a computer's
9   usage and writes then into RRD files.
12 Features
13 --------
15   * collectd is able to collect the following data:
17     - CPU utilization
18       (Time spent in system, user, nice and idle)
20     - CPU frequency
21       (For laptops with speed step or a similar technology)
23     - Disk utilization
24       (Sectors read/written, number of read/write actions, time spent doing IO)
26     - Quota
27       (User/group block/inode usage/quota/limit/grace/timeleft per filesystem.)
29     - Harddisk temperatures
30       (Uhm, yeah, temperature of harddisks that is ;)
32     - System load
33       (Load average over the last 1, 5 and 15 minutes)
35     - Memory utilization
36       (Memory occupied by running processes, page cache, buffer cache and free)
38     - NFS Procedures
39       (Which NFS command were called how often. Only NFSv2 and NFSv3 right now)
41     - Ping latency
42       (Time to reach the default gateway or another given host)
44     - Serial
45       (RX and TX of serial interfaces)
47     - Sensors
48       (System temperatured and fan rotation speeds)
50     - Swap
51       (Pages swapped out onto harddisk or whatever is called `swap' by the OS..)
53     - Tape
54       (Read and write bytes and operations on tape devices)
56     - Traffic
57       (In/Outbound traffic on the interfaces)
59     - Users
60       (Currently logged in users)
62   * Performance: Running as a daemon collectd doesn't spend much time in
63     startup. Since collectd links against libping, librrd and libsensors it
64     doesn't need to start any other processes.
66   * Hardly any maintenance neccessary and setup is trivial.
68   * Extremely easy and failsafe network operation possible.
71 Operation
72 ---------
74   * When running collectd writes system statistics in RRD-files. Per default
75     they reside in `/var/lib/collectd'.
77   * collectd needs to run as user root, since only root can craft ICMP
78     packages needed to ping other hosts. collectd should NOT be installed
79     setui root since it can be used to overwrite valuable files..
81   * Sample scripts to generate graphs reside in `contrib/' in the source
82     package or somewhere near `/usr/share/doc/collectd' in most distributions.
83     Please be aware that those script are meant as a starting point for your
84     own experiments.. Some of them require the `RRDs' Perl module.
85     (`librrds-perl' on Debian)
87   * The RRD-files that collectd creates hold the following data. Use ``rrdtool
88     resize'' if you want to cover longer/shorter periods of time.
90     Resolution | Data points |  Timespan
91     -----------+-------------+----------
92     60 seconds |        1500 |  25 hours
93     30 minutes |        1680 |  35 days
94      6 hours   |        1520 | 380 days
96   * Use `-c' to start in client-, `-s' to start in server-mode. Read the
97     manpage for details.
100 Prerequisites
101 -------------
103   To compile collectd from source you will need:
105   * Usual suspects: C compiler, linker, preprocessor, make, ...
107   * rrdtool (headers and library; rrdtool 1.0 and 1.2 both work fine)
108     If built without `librrd' the resulting binary will be `client only', i.e.
109     will send it's values via multicast and not create any RRD files itself.
111   * lm-sensors (optional)
113   * libstatgrab may be used to collect statistics on systems other than Linux
114     and/or Solaris. Note that CPU- and disk-statistics, while being provided by
115     this library, are not supported in collectd right now..
116     <http://www.i-scream.org/libstatgrab/> 
118 Author
119 ------
121   Florian octo Forster <octo at verplant.org>