Bumped version to 3.11.7; Updated ChangeLog.
[collectd.git] / README
1  collectd - System information collection daemon
2 =================================================
3 http://collectd.org/
4
5 About
6 -----
7
8   collectd is a small daemon which collects statistics about a computer's
9   usage and writes then into RRD files.
10
11
12 Features
13 --------
14
15   * collectd is able to collect the following data:
16
17     - Apache server utilization
18       (Number of bytes transfered, number of requests handled and detailed
19       scoreboard statistics)
20
21     - APC UPS Daemon
22       (UPS charge, load, input/output/battery voltage, etc)
23
24     - Apple Sensors
25       (Temperature, fanspeed and voltage sensors of apple computers)
26
27     - Battery
28       (Charge, current and charge of ACPI and PMU based batteries)
29
30     - CPU utilization
31       (Time spent in system, user, nice and idle)
32
33     - CPU frequency
34       (For laptops with speed step or a similar technology)
35
36     - Mountpoint usage
37       (Basically the values `df(1)' delivers)
38
39     - Disk utilization
40       (Sectors read/written, number of read/write actions, time spent doing IO)
41
42     - DNS traffic
43       (query types, response codes, opcodes and traffic)
44
45     - Email statistics
46       (count, traffic, spam scores and checks)
47
48     - Harddisk temperatures
49       (Uhm, yeah, temperature of harddisks that is ;)
50
51     - System load
52       (Load average over the last 1, 5 and 15 minutes)
53
54     - mbmon - motherboard monitoring
55       (temperature, fanspeed and voltage information)
56
57     - Memory utilization
58       (Memory occupied by running processes, page cache, buffer cache and free)
59
60     - Multimeter
61       (Information provided by serial multimeters, such as the «Metex M-4650CR»)
62
63     - MySQL server statistics
64       (Commands issued, handlers triggered, thread usage, query cache
65       utilization and traffic sent/received)
66
67     - NFS Procedures
68       (Which NFS command were called how often. Only NFSv2 and NFSv3 right now)
69
70     - NTP Daemon
71       (Local clock drift, offset to peers, etc)
72
73     - Ping latency
74       (Time to reach the default gateway or another given host)
75
76     - Process counts
77       (Number of running, sleeping, zombie, ... processes)
78
79     - Sensors
80       (lm_sensors voltages, temperatures and fan rotation speeds)
81
82     - Serial
83       (RX and TX of serial interfaces)
84
85     - Swap
86       (Pages swapped out onto harddisk or whatever is called `swap' by the OS..)
87
88     - Tape
89       (Read and write bytes and operations on tape devices)
90
91     - Traffic
92       (In/Outbound traffic on the interfaces)
93
94     - Users
95       (Currently logged in users)
96
97     - VServer
98       (System ressources used by vservers)
99
100     - Wireless
101       (Link quality of wireless cards)
102
103   * Performance: Running as a daemon collectd doesn't spend much time in
104     startup. Since collectd links against libping, librrd and libsensors it
105     doesn't need to start any other processes.
106
107   * Hardly any maintenance neccessary and setup is trivial.
108
109   * Extremely easy and failsafe network operation possible.
110
111
112 Operation
113 ---------
114
115   * collectd's configuration file can be found at `sysconfdir'/collectd.conf.
116     Run `collectd -h' for a list of builtin defaults. See `collectd.conf(5)'
117     for a list of options and a syntax description.
118
119   * When running collectd writes system statistics in RRD-files. Per default
120     they reside in `/var/lib/collectd'.
121
122   * When using the `ping' plugin collectd needs to run as user root, since only
123     root can craft ICMP packages needed to ping other hosts. collectd should
124     NOT be installed setuid root since it can be used to overwrite valuable
125     files..
126
127   * Sample scripts to generate graphs reside in `contrib/' in the source
128     package or somewhere near `/usr/share/doc/collectd' in most distributions.
129     Please be aware that those script are meant as a starting point for your
130     own experiments.. Some of them require the `RRDs' Perl module.
131     (`librrds-perl' on Debian)
132
133   * The RRAs of the automatically created RRD files depend on the `step'
134     and `heartbeat' settings given on compile time. For a list of the
135     default RRAs take a look in the collectd(1) manpage.
136
137
138 Prerequisites
139 -------------
140
141   To compile collectd from source you will need:
142
143   * Usual suspects: C compiler, linker, preprocessor, make, ...
144
145   * rrdtool (optional; headers and library; rrdtool 1.0 and 1.2 both work fine)
146     If built without `librrd' the resulting binary will be `client only', i.e.
147     will send it's values via multicast and not create any RRD files itself.
148     Alternatively you can chose to write CSV-files (Comma Seperated Values)
149     instead.
150
151   * libmysqlclient (optional)
152
153   * lm-sensors (optional)
154
155   * libstatgrab may be used to collect statistics on systems other than Linux
156     and/or Solaris. Note that CPU- and disk-statistics, while being provided
157     by this library, are not supported in collectd right now..
158     <http://www.i-scream.org/libstatgrab/> 
159
160   * libcurl (optional)
161     If you want to use the `apache' plugin
162
163   * librt, libsocket, libkstat, libdevinfo
164     Various standard Solaris libraries which provide system functions.
165
166   * libpthread (optional)
167     For parallelization, especially for plugins that communicate with the
168     outside, e. g. with a socket.
169
170   * CoreFoundation.framework and IOKit.framework
171     For copiling on darwin in general and the `apple_sensors' plugin in
172     particular.
173
174 Author
175 ------
176
177   Florian octo Forster <octo at verplant.org>
178