3 collectd - System statistics collection daemon
11 collectd is a daemon that collects various system statistics periodically and
12 stores them into RRD-files. Which data is collected depends on compile-time
13 settings. The following features may be available:
19 CPU utilization (I<cpu>)
23 Disk and partition usage/throughput (I<disk>)
27 Harddisk temperatures (I<hddtemp>)
31 System load averages (I<load>)
35 Memory usage (I<memory>)
39 NFS utilization (I<nfs>, Linux only)
43 Network latency (I<ping>)
47 Number of processes (I<processes>, Linux only)
51 lm_sensors information (I<sensors>, Linux only)
55 Serial port traffic (I<serial>, Linux only)
63 Tape drive usage (I<tape>, Solaris only)
67 Network traffic (I<traffic>)
71 Number of users logged into the system (I<users>)
79 =item B<-C> I<E<lt>config-fileE<gt>>
81 Specify an alternative config file. This is the place to go when you wish to
82 change B<collectd>'s behavior. The path may be relative to the current working
87 Don't fork to the background. I<collectd> will also B<not> close standard file
88 descriptors, detach from the session nor write a pid file. This is mainly
89 thought for 'supervisioning' init replacements such as I<runit>.
93 Output usage information and exit.
99 The RRD files are created automatically with the following RRAs:
101 RRA:AVERAGE:0.2:6:1500
102 RRA:AVERAGE:0.1:180:1680
103 RRA:AVERAGE:0.1:2160:1520
106 RRA:MIN:0.1:2160:1520
109 RRA:MAX:0.1:2160:1520
111 Since collectd uses a 10 second I<step> the RRAs contain the following
114 Resolution | Data points | Timespan
115 -----------+-------------+----------
116 60 seconds | 1500 | 25 hours
117 30 minutes | 1680 | 35 days
118 6 hours | 1520 | 380 days
120 The DS'es depend on the module creating the RRD files:
124 =item CPU (F<cpu-I<E<lt>numE<gt>>.rrd>)
126 DS:user:COUNTER:25:0:100
127 DS:nice:COUNTER:25:0:100
128 DS:syst:COUNTER:25:0:100
129 DS:idle:COUNTER:25:0:100
130 DS:wait:COUNTER:25:0:100
132 =item Diskstats (F<disk-I<E<lt>majorE<gt>>-I<E<lt>minorE<gt>>.rrd>)
134 DS:rcount:COUNTER:25:0:U
135 DS:rmerged:COUNTER:25:0:U
136 DS:rbytes:COUNTER:25:0:U
137 DS:rtime:COUNTER:25:0:U
138 DS:wcount:COUNTER:25:0:U
139 DS:wmerged:COUNTER:25:0:U
140 DS:wbytes:COUNTER:25:0:U
141 DS:wtime:COUNTER:25:0:U
143 =item Diskstats (F<partition-I<E<lt>majorE<gt>>-I<E<lt>minorE<gt>>.rrd>)
145 DS:rcount:COUNTER:25:0:U
146 DS:rbytes:COUNTER:25:0:U
147 DS:wcount:COUNTER:25:0:U
148 DS:wbytes:COUNTER:25:0:U
150 =item HDD Temperature (F<hddtemp-I<E<lt>majorE<gt>>-I<E<lt>minorE<gt>>.rrd>)
152 DS:value:GAUGE:25:U:U
154 =item System load (F<load.rrd>)
156 DS:shortterm:GAUGE:25:0:100
157 DS:midterm:GAUGE:25:0:100
158 DS:longterm:GAUGE:25:0:100
160 =item Memory usage (F<memory.rrd>)
162 DS:used:GAUGE:25:0:9223372036854775807
163 DS:free:GAUGE:25:0:9223372036854775807
164 DS:buffers:GAUGE:25:0:9223372036854775807
165 DS:cached:GAUGE:25:0:9223372036854775807
167 =item NFSv2 Procedures (F<nfs2_procedures-I<(client|server)>.rrd>)
169 DS:null:COUNTER:25:0:U
170 DS:getattr:COUNTER:25:0:U
171 DS:setattr:COUNTER:25:0:U
172 DS:root:COUNTER:25:0:U
173 DS:lookup:COUNTER:25:0:U
174 DS:readlink:COUNTER:25:0:U
175 DS:read:COUNTER:25:0:U
176 DS:wrcache:COUNTER:25:0:U
177 DS:write:COUNTER:25:0:U
178 DS:create:COUNTER:25:0:U
179 DS:remove:COUNTER:25:0:U
180 DS:rename:COUNTER:25:0:U
181 DS:link:COUNTER:25:0:U
182 DS:symlink:COUNTER:25:0:U
183 DS:mkdir:COUNTER:25:0:U
184 DS:rmdir:COUNTER:25:0:U
185 DS:readdir:COUNTER:25:0:U
186 DS:fsstat:COUNTER:25:0:U
188 =item NFSv3 Procedures (F<nfs3_procedures-I<(client|server)>.rrd>)
190 DS:null:COUNTER:25:0:U
191 DS:getattr:COUNTER:25:0:U
192 DS:setattr:COUNTER:25:0:U
193 DS:lookup:COUNTER:25:0:U
194 DS:access:COUNTER:25:0:U
195 DS:readlink:COUNTER:25:0:U
196 DS:read:COUNTER:25:0:U
197 DS:write:COUNTER:25:0:U
198 DS:create:COUNTER:25:0:U
199 DS:mkdir:COUNTER:25:0:U
200 DS:symlink:COUNTER:25:0:U
201 DS:mknod:COUNTER:25:0:U
202 DS:remove:COUNTER:25:0:U
203 DS:rmdir:COUNTER:25:0:U
204 DS:rename:COUNTER:25:0:U
205 DS:link:COUNTER:25:0:U
206 DS:readdir:COUNTER:25:0:U
207 DS:readdirplus:COUNTER:25:0:U
208 DS:fsstat:COUNTER:25:0:U
209 DS:fsinfo:COUNTER:25:0:U
210 DS:pathconf:COUNTER:25:0:U
211 DS:commit:COUNTER:25:0:U
213 =item Network latency / Ping (F<ping-I<E<lt>hostnameE<gt>>.rrd>)
215 DS:ping:GAUGE:25:0:65535
217 =item Processes (F<processes.rrd>)
219 DS:running:GAUGE:25:0:65535
220 DS:sleeping:GAUGE:25:0:65535
221 DS:zombies:GAUGE:25:0:65535
222 DS:stopped:GAUGE:25:0:65535
223 DS:paging:GAUGE:25:0:65535
224 DS:blocked:GAUGE:25:0:65535
226 =item lm_sensors (F<sensors-I<E<lt>chipE<gt>>-I<E<lt>featureE<gt>>.rrd>)
228 DS:value:GAUGE:25:U:U
230 =item Serial port traffic (F<serial-I<E<lt>numE<gt>>.rrd>)
232 DS:incoming:COUNTER:25:0:U
233 DS:outgoing:COUNTER:25:0:U
235 =item Swap usage (F<swap.rrd>)
237 DS:used:GAUGE:25:0:1099511627776
238 DS:free:GAUGE:25:0:1099511627776
239 DS:cached:GAUGE:25:0:1099511627776
240 DS:resv:GAUGE:25:0:1099511627776
242 =item Tape drive usage (F<tape-I<E<lt>nameE<gt>>.rrd>)
244 DS:rcount:COUNTER:25:0:
245 DS:rmerged:COUNTER:25:0:U
246 DS:rbytes:COUNTER:25:0:U
247 DS:rtime:COUNTER:25:0:U
248 DS:wcount:COUNTER:25:0:U
249 DS:wmerged:COUNTER:25:0:U
250 DS:wbytes:COUNTER:25:0:U
251 DS:wtime:COUNTER:25:0:U
253 =item Network traffic (F<traffic-I<E<lt>nameE<gt>>.rrd>)
255 DS:incoming:COUNTER:25:0:U
256 DS:outgoing:COUNTER:25:0:U
258 =item Users (F<users.rrd>)
260 DS:users:GAUGE:25:0:65535
266 By default collectd starts in the so called I<local mode> which is not very
267 interesting. It collects data and writes it into RRD files in
268 F</var/lib/collectd>. There's nothing special so I won't discuss that in more
271 Please be aware that B<client-, local- and server-mode are mutual exclusive>. A
272 later declaration overrides earlier ones. I<collectd -l -c -s> will start in
273 server-mode. If you want statistics of the server too you will have to start a
274 client process as well.
276 Starting with version 3 collectd may send data over a network. As common with
277 network stuff there are two modes: A I<sender> and a I<listener>. Since one
278 usually has many senders and only a few listeners the sender is also called
279 I<client> (using the option B<-c>) and the listener is called I<server> (using
282 Communication happends using the (IPv4) multicast group B<239.192.74.66> and
283 packets sent to the port B<25826/udp>. Every ten seconds the I<client> queries
284 all the modules and sends the collected data to the multicast group. The
285 I<server> subscribes to the multicast group upon startup and then waits for
286 incoming packets. As it receives the packets it checks wether it has the
287 neccessary module and, if found, writes the data to an RRD file, creating
288 directories and files as needed.
290 The multicast group used is within the I<Organization Local Scope> as defined
291 by L<RFC2365>. Addresses within that space are meant to be routed within an AS
292 but not to the outside. However collectd cannot control this and won't try. So
293 it's totally up to you to secure your net.
295 The UDP port used has been checked to not be assigned by the IANA.
297 On multi-homed machines you may need to add a route to the multicast net
298 (B<224.0.0.0/4>) if multicast packages take the wrong interface. The listener
299 on the other hand listens on B<all> interfaces.
301 =head1 SPECIAL MODULES
305 This module reads F</sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq> (for
306 the first CPU installed) to get the current CPU frequency. If this file does
307 not exist make sure B<cpufreqd> (L<http://cpufreqd.sourceforge.net/>) or a
308 similar tool is installed.
312 The B<sensors> module uses lm_sensors to retrieve sensor-values. This means
313 that all the needed modules have to be loaded and lm_sensors has to be
314 configured (most likely by editing F</etc/sensors.conf>. Read
315 L<sensors.conf(5)> for details.
317 The B<lm_sensors> homepage can be found at
318 L<http://secure.netroedge.com/~lm78/>.
322 To get values from B<hddtemp> collectd connects to B<localhost> (127.0.0.1),
323 port B<7634/tcp>. hddtemp has to be running to work correctly. If hddtemp is
324 not running timeouts may appear which may interfere with other statistics..
326 The B<hddtemp> homepage can be found at
327 L<http://www.guzu.net/linux/hddtemp.php>.
331 L<collectd.conf(5)>, L<rrdtool(1)>, L<sensors(1)>, L<hddtemp(8)>,
336 Florian Forster E<lt>octo@verplant.orgE<gt>