Bump version to 5.5.3; Update ChangeLog.
[collectd.git] / ChangeLog
1 2016-11-28, Version 5.5.3
2         * collectd: Write threads are stopped before shutdown callbacks are
3           called. Thanks to Florian Forster. #1110
4         * collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT" is not
5           available on AIX. Thanks to Chao Yang.
6         * libcollectdclient: Lines printed to "STDERR" are now guarded by the
7           environment variable "COLLECTD_TRACE". Thanks to Florian Forster. #105
8         * collectd.conf(5): Various typos have been fixed. Thanks to Marc
9           Fournier.
10         * Build system: Detection of the Java environment has been made
11           deterministic to allow for reproducible builds. Thanks to Marc
12           Fournier. #1523
13         * APC UPS plugin: Unavailable metrics are now skipped instead of
14           reported as 0 (zero). Thanks to Florian Forster. #2025
15         * Battery plugin: The minimum value has been removed from the power type
16           to allow the plugin to report discharging batteries as negative power.
17           Thanks to Florian Forster.
18         * DBI, Oracle and PostgreSQL plugins: An error message when the type
19           instance is truncated has been added. Thanks to Florian Forster. #4
20         * cURL-JSON plugin: A possible segmentation fault when parsing
21           unexpected JSON has been fixed. Thanks to Florian Forster. #1896
22         * DF plugin: Compilation with xfsprogs ≥ 4.7.0 has been fixed. Thanks
23           to Thomas Deutschmann. #1877
24         * Modbus plugin: Build issues on FreeBSD have been fixed. Thanks to
25           Florian Forster.
26         * Network plugin: An error message has been corrected. Thanks to Florian
27           Forster.
28         * Network plugin: Handling of errors form secure memory initialization
29           has been improved: the plugin fails gracefully now instead of calling
30           "abort()". Thanks to Sebastian Harl.
31         * Network plugin: The gcrypt library is only initialized when it is
32           actually required due to the network plugin's configuration. Thanks to
33           Florian Forster. #1902
34         * Ping plugin: The init callback has been changed to be idempotent,
35           fixing errors being reported on Solaris. Thanks to Florian Forster.
36           #869
37         * PostgreSQL plugin: The query_plans and query_plans_by_table queries
38           have been improved to return 0 (zero) instead of "NULL" when not
39           available. Thanks to Bernd Zeimetz. #1905
40         * PowerDNS plugin: The "recursor command" has been fixed so PowerDNS can
41           correctly parse all requested fields. Thanks to Ruben Kerkhof.
42         * Python plugin: Handling of data sets with multiple data sources of
43           different type has been fixed. Thanks to Sebastian Harl.
44         * RRDCacheD plugin: Reconnection behavior after failed operations has
45           been added. Thanks to Sebastian Harl. Debian#657877
46         * Write Graphite and AMQP plugins: A bug that could lead to a missing
47           null-termination has been fixed. Thanks to Markus Linnala.
48         * Write Kafka plugin: Support for librdkafka 0.9.0 has been added.
49           Thanks to Florian Forster.
50         * Write Riemann plugin: Build issues on Solaris have been fixed. Thanks
51           to Florian Forster.
52
53 2016-07-25, Version 5.5.2
54         * collectd: A division by zero has been fixed in the
55           "plugin_dispatch_multivalue()" function. Thanks to Corey Kosak.
56         * collectd: The address of the Free Software Foundation has been fixed
57           in GPL license headers. Thanks to Ruben Kerkhof.
58         * Build system: Detection and handling of librrd 1.6 and later has been
59           fixed. Thanks to Ruben Kerkof.
60         * Apache plugin: A warning about a possible misconfiguration has been
61           added. Thanks to Marc Fournier.
62         * cURL, cURL-JSON and cURL-XML plugins: A memory leak when allocating
63           more memory fails has been fixed. Thanks to Brandon Arp.
64         * DF plugin: A build issue on DragonFlyBSD has been fixed. Thanks to
65           Ruben Kerkhof. #1575
66         * Ethstat plugin: Code to strip leading whitespace from device names.
67           This works around an issue in the VMXNet3 driver. Thanks to Thomas
68           Guthmann. #1059
69         * Exec plugin: A problem in the error handling of an fdopen() failure
70           has been fixed. Thanks to @ciomaire.
71         * Modbus plugin: The debug output has been disabled by default. It is
72           now only enabled when building with "--enable-debug". Thanks to Eric
73           Sandeen and Marc Fournier.
74         * Network plugin: A check for the initialization of secure memory has
75           been added. Previously, failure to initialize this memory was
76           ignored. Thanks to @yujokang. #1665
77         * Network plugin: A heap overflow has been fixed in the server code.
78           This issue can be triggered remotely and is potentially exploitable.
79           Thanks to Emilien Gaspar. CVE-2016-6254
80         * Perl plugin: Init callbacks have been changed to run essentially
81           single-threaded to avoid race conditions by init functions which
82           create additional threads. Thanks to Pavel Rochnyack. #1706
83         * Processes plugin: A warning about too long process names has been
84           added. Thanks to Marc Fournier. #1284
85         * Redis plugin: A memory leak in an error handling code path has been
86           fixed. Thanks to Andrés J. Díaz.
87         * Redis plugin: The data source type of the expired_keys metric has been
88           corrected to "DERIVE". Thanks to Marc Falzon and Marc Fournier. #1483.
89         * SMART plugin: A build dependency on libudev has been added. Thanks to
90           Pavel Rochnyack. #1724
91         * StatsD plugin: A deadlock on plugin shutdown has been fixed. Thanks to
92           Pavel Rochnyack #1703
93         * Write HTTP plugin: Freeing of memory holding HTTP headers during
94           shutdown has been fixed. Thanks to Tolga Ceylan.
95         * Write Sensu plugin: A segfault when the Tag was unset has been fixed.
96           Thanks to Marc Fournier.
97         * ZFS ARC plugin: The cache_operation-stolen metric has been removed for
98           FreeBSD 10.2 and later. Thanks to Ruben Kerkhof. #1580
99
100 2016-01-22, Version 5.5.1
101         * Build system: Compilation errors have been avoided by correctly
102           defining package name and version used by autoconf. Thanks to Nathan
103           Berkley. #1063
104         * Build system: Dependency ordering was fixed to ensure parallel builds
105           work reliably. Thanks to Gustavo Zacarias. #1125
106         * Build system: Error messages have been improved and building the unit
107           tests has been fixed on Solaris. Thanks to Florian Forster and
108           Dagobert Michelsen. #1077
109         * Build system: The move of the "utils_ignorelist" functions has been
110           reverted. This fixes build issues of numerous plugins. Thanks to
111           Benjamin Drung;. #1323
112         * Build system: The fhcount plugin has been restricted to Linux. Thanks
113           to Ruben Kerkhof. #1195
114         * Build system: Detection of header files for the turbostat plugin has
115           been fixed. Thanks to Marc Fournier. #1075
116         * collectd: The "LC_NUMERIC" locale is now forced, to prevent issues
117           with some plugins on environments using a comma as decimal separator.
118           Thanks to Florian Forster. #1237
119         * Documentation: Some precisions related to the virt plugin have beed
120           added. Thanks to Wojtek Bocer and Ruben Kerkhof.
121         * Documentation: The CollectdInternalStats documentation has been
122           improved. Thanks to Yves Mettier and Florian Forster.
123         * Battery plugin: A missing Type has been added. Thanks to Marc
124           Fournier. #1338
125         * Bind plugin: An off-by-one error has been fixed: an index was checked
126           against a wrong variable, which may lead to an out-of-bounds read.
127           Thanks to Michal Humpula. #1123
128         * Ceph plugin: JSON parsing has been refactored to support ceph 10.0.0
129           and fixes several buffer overflows. Thanks to Florian Forster. #1350
130         * CPU plugin: A Mac OS X specific bug has been fixed: the plugin
131           expected an incorrect number of CPU states, resulting in failing read
132           callbacks. This regression was introduced in 5.5.0. Thanks to Robert
133           Viduya.
134         * Disk plugin: Support for Mac OS X 10.10 has been added. Thanks to
135           Robert Viduya. #1065
136         * IPC plugin: Support for building with musl-libc has been added. Thanks
137           to Natanael Copa. #1147
138         * Log Logstash plugin: A segfault when using libyajl, version 1 was
139           fixed. Thanks to Vincent Bernat. #1190
140         * Log Logstash plugin: The timestamp is now ISO 8601 compliant. Thanks
141           to Marc Fournier. #1132
142         * memcached plugin: The Type of the listen-disabled metric was fixed.
143           Thanks to Florian Forster. #1356
144         * MySQL plugin: The Type used by Innodb_buffer_pool_pages_flushed was
145           fixed. Thanks to Marek Becka. #1085
146         * OpenLDAP plugin: A crash when using LDAPI (LDAP-over-IPC) got fixed.
147           Thanks to Marek Becka. #1080
148         * OpenLDAP plugin: Support for Mac OS X has been added. Thanks to Ruben
149           Kerkhof. #1489
150         * SMART plugin: A memory leak has been fixed. Thanks to Florian
151           Schüller and Pierre-Yves Ritschard. #1076
152         * Swap plugin: A regression that would lead to swap usage being reported
153           in kilobytes (instead of bytes) has been fixed. Thanks to Marek Becka.
154           #1071
155         * Varnish plugin: Support for FreeBSD has been added. Thanks to Ruben
156           Kerkhof. #1182
157         * Varnish plugin: Support for versions 3 and 4 has been made more
158           tolerant to minor changes in Varnish point releases. Thanks to Marc
159           Fournier. #1302
160         * virt plugin: A copy-and-paste mistake in an error message has been
161           fixed. Thanks to Ruben Kerkhof. #1101
162         * Write Kafka plugin: Support for Solaris has been added. Thanks to
163           Shahul Hameed. #1171
164         * Write Redis plugin: Dead code has been removed. Thanks to Brian Kelly.
165           #1143
166         * 27 patches have been applied to numerous plugins and core components,
167           fixing various programming errors which were reported by scan-build,
168           libasan, FBInfer, coverity-scan and clang: Thanks to Ruben Kerkhof,
169           Florian Forster and Marek Becka.
170         * Collectd::Unixsock: A Perl error got corrected. Thanks to Ciaran Mac
171           An Iomaire. #1295
172
173 2015-05-27, Version 5.5.0
174         * Build system: Ability to make out-of-tree builds has been fixed.
175           Thanks to Vincent Bernat. #792
176         * Build system, Disk and Users plugins: Detection and use of libstatgrab
177           ≧ 0.90 has been added. Thanks to Vincent Bernat. #445, #795, #806,
178           #807, #908
179         * Build system, Memory, CPU, TCPConns and Processes plugins: Numerous
180           fixes related to OpenBSD support have been added. Thanks to Landry
181           Breuil. #777, #778, #779, #808
182         * Build system: Plugins now only export "module_register()". Thanks to
183           Florian Forster.
184         * Build system: Various cleanups and improvements have been done. Thanks
185           to Marc Fournier.
186         * collectd: Numerous internal changes and improvements to the daemon and
187           the plugin API have been make. Thanks to Florian Forster, Pierre-Yves
188           Ritschard and Alex Petrov. #512, #727
189         * collectd: Numerous spelling mistakes have been corrected in comments
190           and documentation and several error messages have been improved.
191           Thanks to Ruben Kerkhof, Abhinav Upadhyay, Olivier Bazoud, Pierre-Yves
192           Ritschard, Tim Smith, Moshe Zada, Katelyn Perry and Marc Fournier.
193         * collectd: Rules/Targets can now be appended to existing Filter Chains.
194           Thanks to Marc Falzon. #444
195         * collectd: Failing Filter Chains destinations will now log the list of
196           available write targets. Thanks to Wilfried Goesgens. #650, #1043
197         * collectd: Support for process signaling and management by upstart and
198           systemd has been implemented for the Linux platform. Thanks to
199           Pierre-Yves Ritschard and Marc Fournier. #798, #811, #814
200         * collectd: The "CollectInternalStats" option has been added. Thanks to
201           Yves Mettier. #691
202         * collectd: The daemon source code and dependencies have moved to the
203           "src/daemon/" directory. Thanks to Florian Forster.
204         * collectd: The new "MaxReadInterval" option allows to cap the
205           exponential retry interval of plugins read errors. Thanks to Alexey
206           Remizov and Florian Forster. #713
207         * collectd: The "-P" command-line option now has precedence over the
208           "PIDFile" option. Thanks to Thomas D. #553
209         * collection.cgi: Various data-source related adjustments have been
210           made. Thanks to Fabiano Pires and Sebastian Harl.
211         * libcollectdclient: Now propagates errors when signing / encrypting
212           network packets. Thanks to Florian Forster.
213         * Configuration: Support for unquoted IPv6 addresses has been added.
214           Thanks to Sebastian Harl. #489
215         * Documentation: Various improvements have been done. Thanks to Florian
216           Forster and Marc Fournier.
217         * Examples: the sample C plugin has been updated to the current plugin
218           API. Thanks to Sebastian Harl.
219         * Licensing: The following components have been relicensed to the MIT
220           license: the Apple Sensors, Ascent, DBI, E-Mail, Entropy, GenericJMX,
221           gmond, LogFile, nginx, Notify Desktop, NTPd, NUT, olsrd, Perl, Ping,
222           PostgreSQL, Protocols, RouterOS, RRDCacheD, SNMP, StatsD, SysLog,
223           Table, Tail, UnixSock, vmem, VServer, Wireless, Write Riemann and XMMS
224           plugins, the core collectd daemon, the collectdmon, collectd-nagios
225           and collectd-tg utilities, all the Targets and Matches, liboconfig,
226           most of the "utils_*" files and the plugin API.
227         * Tests: A test suite has been added. Thanks to Florian Forster.
228         * Threshold: The hysteresis calculation has been made more reliable.
229           Thanks to Jan Kundrát. #581
230         * Threshold: Various fixes and improvements have been made. Thanks to
231           Manuel Luis Sanmartín Rozada. #649, #644
232         * AMQP plugin: The "ConnectionRetryDelay" option has been added,
233           allowing to delay reconnection. Thanks to Yoga Ramalingam and Marc
234           Fournier. #833
235         * AMQP plugin: The "QueueDurable" and "QueueAutoDelete" options have
236           been added, giving control over queue creation and deletion. Thanks to
237           David Blundell and Marc Fournier. #623
238         * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx and Write HTTP
239           plugins: Customizing the "User-Agent" field is now possible at
240           compile-time. Thanks to Jeremy Katz. #440
241         * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx plugins: The
242           connection will be reset if it hasn't completed within the configured
243           "Interval". The new "Timeout" option gives control over this behavior.
244           Thanks to Jan Kundrát and Marc Fournier. #982, #983, #993
245         * Apache, Ascent, cURL, cURL-JSON, cURL-XML, nginx, Write HTTP plugins:
246           Allow usernames and passwords to contain colons if built against
247           libcurl ≧ 7.19.1. Thanks to Marc Fournier. #695, #947
248         * Apache plugin: The "SSLCiphers" option gives control over the
249           encryption algorithms to use with TLS connections. Thanks to Toni
250           Moreno. #946
251         * Barometer plugin: This new plugin reads sensor data from various
252           Freescale and Bosch digital barometers. Thanks to Tomas Menzl. #69,
253           #693
254         * Battery plugin: Reporting values as percentages and reporting degraded
255           batteries has been added. Thanks to Florian Forster.
256         * Battery plugin: Support for reading values from sysfs on Linux has
257           been added. Thanks to Andy Parkins, Nicholas Humfrey, Peter Wu and
258           Florian Forster. #725, #810, #998
259         * Battery plugin: The value for current is no longer supplied unless the
260           battery provides this information. Thanks to Florian Forster.
261         * BIND plugin: Bind's XML v3 API is now supported; Thanks to Victor
262           Berger, Bruno Prémont and Michal Humpula. #742, #847
263         * Ceph plugin: This new plugin collects statistics from the Ceph
264           distributed storage system. Thanks to Dan Ryder, Dennis Zou, Colin
265           McCabe, Sage Weil. #522, #598
266         * ConnTrack plugin: Support for reporting values as percentages as well
267           as legacy conntrack files in "/proc" has been added. Thanks to
268           Pierre-Yves Ritschard. #497, #680
269         * CPU plugin: The plugin is now able to report values as percentages and
270           aggregate values per-state and per-CPU. Thanks to Pierre-Yves
271           Ritschard, Florian Forster, Fabien Wernli, Nicholas Humfrey and
272           Wilfried Goesgens. #499, #516, #639 #734, #812, #802
273         * cURL-JSON plugin: Extracting values from complex JSON structures has
274           been enhanced. Thanks to Jim Radford. #408, #411
275         * cURL-JSON plugin: Intervals can now be configured on a per-URL basis.
276           Thanks to Stan Sawa. #685
277         * cURL-JSON, cURL-XML, Write HTTP plugins: These plugins now also follow
278           HTTP redirects. Thanks to Marc Fournier.
279         * cURL, cURL-JSON, cURL-XML plugins: HTTP Digest authentication has been
280           implemented. Thanks to Frank Cornelis. #482
281         * DBI, Oracle, PostgreSQL plugins: A "MetadataFrom" parameter has been
282           added which allows to set metadata from database columns. Thanks to
283           Mark Wong. #317, #321
284         * DBI plugin: Querying several databases in parallel is now possible.
285           Thanks to Vincent Bernat. #453
286         * Disk plugin: On the Linux platform, disk names can now get looked up
287           in udev with the "UdevNameAttr" option. Thanks to Patrick Mooney. #537
288         * Disk plugin: This plugin now collects several additional I/O-related
289           metrics on the Linux platform. Thanks to Florian Forster and Michael
290           Schenck. #705, #759
291         * DRBD plugin: This new plugin reads Linux's Distributed Replicated
292           Block Device (DRBD) statistics. Thanks to Tim Laszlo. #566, #700
293         * Exec, UnixSock plugins: The "PUTNOTIF" command now allows to set
294           metadata on notifications. Thanks to John-John Tedro. #416
295         * fhcount plugin: This new plugin reports the number of used file
296           handles. Thanks to Jiri Tyr. #1009
297         * GenericJMX plugin: A Class Loader for "JMXConnectorFactory" has been
298           added, allowing the plugin to work with JBOSS > 7. Thanks to Alexandre
299           Moutot. #452
300         * IPC plugin: This new plugin collects information related to shared
301           memory. Thanks to Andrés J. Díaz. #925
302         * Java plugin: Now uses the hostname defined in the configuration file.
303           Thanks to Pierre-Yves Ritschard. #530, #681
304         * Load plugin: The plugin is now able to report values as percentages.
305           Thanks to Vedran Bartonicek and Pierre-Yves Ritschard. #344, #498
306         * Log Logstash plugin: This new plugin writes collectd logs and events
307           as Logstash JSON formatted events. Thanks to Pierre-Yves Ritschard.
308           #360
309         * LVM plugin: The plugin collects thin pool data volumes size, and no
310           longer reports virtual volumes. Thanks to Benjamin Gilbert. #603
311         * memcached plugin: "listen_disabled_num" are now also reported. Thanks
312           to Matt Cottingham. #622
313         * Memory plugin: Slab memory reporting on the Linux platform has been
314           added. Thanks to Manuel CISSÉ and Marc Fournier. #560, #697
315         * Memory plugin: The plugin is now able to report values as percentages.
316           Thanks to Jeremy Katz, Florian Forster and Manuel CISSÉ. #501, #511,
317           #559
318         * Modbus plugin: Selecting between holding and input registers is now
319           possible. Thanks to Jan Vitek. #338
320         * Modbus plugin: Support for accessing devices through an RS-485 serial
321           port has been added. Thanks to Eric Sandeen.
322         * Multimeter plugin: This plugin isn't built by default on the AIX
323           platform anymore. Thanks to Manuel Luis Sanmartin Rozada. #549, #684
324         * MySQL and PostgreSQL plugins: Passing "127.0.0.1" as a host will now
325           result in the global Hostname being used in metric names. Thanks to
326           Jeremy Katz. #441
327         * MySQL plugin: InnoDB, Select and Sort statistics collection has been
328           added. Thanks to Wilson Felipe, Marek Becka and Pierre-Yves Ritschard.
329           #248, #621, #699, #824
330         * MySQL plugin: The "Alias" and "ConnectTimeout" options have been
331           added. Thanks to William Tisäter.
332         * Netlink plugin: Support for 64bit netlink counters has been added.
333           Thanks to Marek Becka. #435
334         * Network plugin: The "ReconnectInterval" configuration option has been
335           added. Thanks to John Ferlito. #732
336         * NFS plugin: Support for NFSv4.0 has been implemented. Thanks to Marek
337           Becka. #550
338         * OneWire plugin: Support for more temperature-providing sensor families
339           has been added. Thanks to Tomasz Torcz. #672
340         * OneWire plugin: Support for full OWFS path and more device families
341           has been implemented. Thanks to Tomas Menzl. #68
342         * OpenLDAP plugin: This new plugin reads monitoring information from
343           OpenLDAP's "cn=Monitor" subtree. Thanks to Kimo Rosenbaum, Marc
344           Fournier and Nicholas Humfrey. #719
345         * OpenVPN plugin: Support for OpenVPN 2.3.0 has been implemented. Thanks
346           to Ed Okerson. #252
347         * OpenVZ plugin: Various improvements have been made, making the plugin
348           report values like the other collectd plugins do. Thanks to Chris
349           Lundquist. #264
350         * Perl plugin: A new "listval_filter" method has been added, various
351           internal cleanups and improvements have been made and a test suite has
352           been added. Thanks to Matthias Bethke. #728
353         * PostgreSQL plugin: The new "ExpireDelay" option allows skipping older
354           values pending write when the database slows down. Thanks to Stephen
355           O'Dor. #593
356         * PowerDNS plugin: The plugin was updated for stats from pdns 3.4.3.
357           Thanks to Ruben Kerkhof. #965
358         * Processes plugin: A memory-usage related optimization for low-profile
359           systems has been added. Thanks to Florian Forster. #652
360         * Python plugin: Support for Python3 has been improved, "ModulePath" is
361           now prepended to "sys.path", and the "get_dataset()" function has been
362           added to the Python API. Thanks to Sven Trenkel and Patrick Browne.
363           #890, #751, #771
364         * Redis and Write_Redis plugins: The support library has been switched
365           from credis to hiredis. Thanks to Andrés J. Díaz, Victor Seva, Marc
366           Fournier, Johan Bergström, Michael Spiegle and brianpkelly. #296,
367           #464, #475, #799, #1030
368         * Redis plugin: Custom commands can now be used to fetch values stored
369           in Redis. Thanks to Pierre-Yves Ritschard. #816
370         * Redis plugin: Support for passwords up to 512 characters long has been
371           added. Thanks to Jeremy Katz. #532
372         * Sensors plugin: Support for lm_sensors' power sensors has been added.
373           Thanks to Jan Kundrát. #571
374         * SMART plugin: This new plugin collects SMART statistics from disk
375           drives. Thanks to Vincent Bernat. #797
376         * SNMP plugin: A blacklist/whitelist feature can now be used to filter
377           which OIDs to collect. Thanks to Christophe Courtaut. #414
378         * SNMP plugin: SNMPv3 authentication and encryption support has been
379           implemented. Thanks to Michael Pilat. #362
380         * SNMP plugin: Two error messages have been disambiguated. Thanks to
381           Sergey. #939, #952
382         * Swap plugin: The plugin is now able to report values as percentages.
383           Thanks to Jeremy Katz and Florian Forster. #500, #510
384         * Swap plugin: The plugin no longer fails on Linux systems where
385           "SwapCached" isn't exposed by the kernel. Thanks to Florian Forster.
386           #733
387         * Tail plugin: "GaugeInc" and "GaugeAdd" options have been implemented.
388           Thanks to Andre Ferraz. #673
389         * Tail plugin: Intervals can now be configured on a per-File basis.
390           Thanks to Tom Leaman. #446
391         * TCPConns plugin: The "AllPortsSummary" option, allowing to summarize
392           all connections, has been added. Thanks to Marek Becka. #488
393         * TCPConns plugin: Three metrics were renamed on the AIX platform, for
394           the sake of consistency. Thanks to Manuel Luis Sanmartín Rozada. #546
395         * Turbostat plugin: This new plugin reads CPU frequency and C-state
396           residency on modern Intel turbo-capable processors. Thanks to Vincent
397           Brillault, Jean Delvare and Nicolas Iooss. #651
398         * UnixSock plugin: The "GETTHRESHOLD" command has been re-added. Thanks
399           to Manuel Luis Sanmartín Rozada. #674
400         * Varnish plugin: Varnish 4 support has been added, as well as as
401           monitoring metrics only available in Varnish 4. Thanks to Marc
402           Fournier. #618, #783
403         * virt plugin: Guests memory usage is now also collected. Thanks to
404           Tiago Carvalho, jazzmes and Zollner Robert.
405         * virt plugin: It is now possible to chose between using guests' name or
406           UUID as plugin_instance. Thanks to Remi Ferrand. #385
407         * virt plugin: The libvirt plugin has been renamed to virt. Thanks to
408           Florian Forster.
409         * Write Graphite plugin: When the connection to graphite fails,
410           reconnection attempts are now limited to once per second. Thanks to
411           Florian Forster. #625
412         * Write HTTP plugin: Multi-instance support of this plugin has been
413           improved. The "<URL "url">" block has been deprecated in favor of
414           "<Node "identifier">". Thanks to Marc Fournier. #902
415         * Write HTTP plugin: Several TLS-related configuration options have been
416           added. Thanks to Ingmar Runge. #666
417         * Write HTTP plugin: The "LowSpeedLimit" and "Timeout" options allow to
418           reset slow/stalled network connections. Thanks to loginator17 and Marc
419           Fournier. #752, #985
420         * Write HTTP plugin: The size of the payload posted to the HTTP server
421           can now be controlled with the "BufferSize" option. Thanks to Florian
422           Forster. #722
423         * Write Kafka plugin: This new plugin sends data to Apache Kafka, a
424           distributed messaging queue. Thanks to Pierre-Yves Ritschard,
425           ciomaire, Vincent Bernat, Marc Fournier. #670, #694, #794, #853, #014
426         * Write Log plugin: This new plugin dispatches collected values to the
427           configured log destination(s). Thanks to Pierre-Yves Ritschard. #886
428         * Write Riemann plugin: Extra meta strings are now added as attributes
429           in notifications. Thanks to John-John Tedro. #417
430         * Write Riemann plugin: Notification message are now sent to the Riemann
431           server via the description field. Thanks to Adrian Miron. #575
432         * Write Riemann plugin: Support for custom attributes has been added.
433           Thanks to Pierre-Yves Ritschard. #459
434         * Write Riemann plugin: Support had been implemented for sending events
435           to Riemann in batches (when using TCP), and is enabled by default.
436           Thanks to Pierre-Yves Ritschard. #800
437         * Write Riemann plugin: The "EventServicePrefix" option has been added,
438           which adds a prefix to event service names. Thanks to Moshe Zada. #706
439         * Write Riemann plugin: Threshold checks can now be passed down to the
440           Riemann server. Thanks to Pierre-Yves Ritschard. #518
441         * Write Sensu plugin: This new plugin submits values to Sensu, a stream
442           processing and monitoring system. Thanks to Fabrice A. Marie and Marc
443           Fournier. #912, #1001, #1016
444         * Write TSDB plugin: This new plugin sends data to OpenTSDB, a scalable
445           time series database. Thanks to Kevin Bowling, Florian Forster, Dallin
446           Young, Michael Schenck and Pierre-Yves Ritschard. #703, #772, #945
447         * ZFS ARC plugin: Support for ZFS-on-Linux has been added. Thanks to
448           Marc Fournier and Wilfried Goesgens. #552
449         * Zookeeper plugin: This new plugin reads data from the Apache Zookeeper
450           "MNTR" command. Thanks to Jeremy Katz. #826
451
452 2016-07-26, Version 5.4.3
453         * Build system: A deprecation warning has been removed. Thanks to
454           Florian Forster.
455         * Build system: An ordering issue when build the AMQP plugin was
456           corrected. Thanks to Shahul Hameed.
457         * Build system: Building the gmond plugin against recent libganglia
458           versions has been added. Thanks to Marc Fournier. #1129
459         * Build system: "collectd-tg" now builds on AIX. Thanks to Manuel Luis
460           Sanmartín Rozada. #542
461         * Build system: "version-gen.sh" portablility was improved. Thanks to
462           Marc Fournier and Ruben Kerkhof.
463         * Build system: Compiling utils_dns.c on Solaris has beed fixed. Thanks
464           to Yves Mettier, Dagobert Michelsen and Florian Forster. #348
465         * Build system: Default JDK detection got improved. Thanks to Ruben
466           Kerkhof and Marc Fournier.
467         * Build system: Detection and handling of librrd 1.6 and later has been
468           fixed. Thanks to Ruben Kerkhof.
469         * Build system: notify_email build options got corrected to make it
470           build on non-GNU libc systems. Thanks to Marc Fournier.
471         * Build system: Protobuf building and logging has been improved. Thanks
472           to Ruben Kerkhof.
473         * Build system: The "make distcheck" target was fixed to properly handle
474           java build artifacts. Thanks to Florian Forster.
475         * Build system: The configure script got fixed to work properly when
476           called with "CC="gcc -Wall -Werror"" . Thanks to Marc Fournier.
477         * Build system: The configure script will now fail if pkg-config isn't
478           available. Thanks to Ruben Kerkhof.
479         * Build system: The users plugin now builds properly on Solaris when
480           libstatgrab is available. Thanks to Dagobert Michelsen. #1061
481         * Build system: Various fixes have been done to improve library
482           detection on FreeBSD. Thanks to Ruben Kerkhof.
483         * collectd2html: Several perl errors have been corrected. Thanks to Ruud
484           van Melick. #1103
485         * collectd: A global gauge format-string is now used to avoid loss of
486           precision. Thanks to Florian Forster. #1039
487         * collectd: A race condition at plugin initialization time was fixed.
488           Thanks to Jan Andres. #1316
489         * collectd: Autoloading now properly sets plugin context, allowing
490           plugins to determine the interval. Thanks to Florian Forster. #1069
491         * collectd: Empty "Plugin" blocks are now supported by the configuration
492           file parser. Thanks to Manuel Luis Sanmartín Rozada. #1035
493         * collectd: The address of the Free Software Foundation has been fixed
494           in GPL license headers. Thanks to Ruben Kerkhof.
495         * collectd: Writing to a closed TCP socket is now properly handled.
496           Thanks to Tamás Földesi. #1104
497         * Documentation: iptables plugin: IPv6 configuration option has been
498           added to the collectd.conf(5) manpage. Thanks to 'Marc Fournier''.
499           #1496
500         * AMQP plugin: The plugin was fixed to build against librabbitmq 0.6.0.
501           Thanks to Remi Collet. #1008
502         * Apache plugin: A warning about a possible misconfiguration has been
503           added. Thanks to Marc Fournier.
504         * Apache plugin: The plugin was extended to parse the whole response,
505           required to support Apache versions greater than 2.4.17. Thanks to
506           Marc Fournier and Florian Forster. #1170, #1343
507         * APC UPS plugin: Log messages are now prefixed with the plugin name.
508           Thanks to Sergey. #1329
509         * Bind plugin: The type_instance now gets properly sanitized. Thanks to
510           Thomas Kho. #992
511         * CPU plugin: Error messages on MacOSX have been improved. Thanks to
512           Florian Forster. #22
513         * cURL plugin: A typo in an error message got corrected. Thanks to Marc
514           Fournier.
515         * cURL, cURL-JSON and cURL-XML plugins: A memory leak when allocating
516           more memory fails has been fixed. Thanks to Brandon Arp.
517         * DF plugin: An bug preventing filesystems which don't report inodes
518           such as btrfs has been corrected. Thanks to Marek Becka. #1096
519         * DF plugin: Duplicate entries are no longer reported twice. Thanks to
520           Stefan Brüns and Florian Forster. #1402
521         * DF plugin: Legacy code for skipping "rootfs" mount points has been
522           removed. Thanks to Marc Fournier. #1402
523         * DF plugin: Legacy references to the "ReportReserved" option have been
524           removed. Thanks to Marc Fournier.
525         * DF plugin: Reading the mtab now uses a reentrant function when
526           possible. Thanks to Ruben Kerkhof. #1163
527         * Ethstat plugin: Code to strip leading whitespace from device names.
528           This works around an issue in the VMXNet3 driver. Thanks to Thomas
529           Guthmann. #1059
530         * Exec plugin: A file descriptor leak when the plugin is configured to
531           run as a non-existing user was corrected. Thanks to Gautam BT and Marc
532           Fournier. #762
533         * Exec plugin: A problem in the error handling of an fdopen() failure
534           has been fixed. Thanks to @ciomaire.
535         * Interface plugin: Documentation about regular expressions in the
536           ignore list has been added. Thanks to Jakub Jankowski.
537         * IRQ plugin: The "FIQ" line is now skipped as it doesn't contain any
538           counter. Thanks to Ruben Kerkhof. #971
539         * Modbus plugin: The debug output has been disabled by default. It is
540           now only enabled when building with "--enable-debug". Thanks to Eric
541           Sandeen and Marc Fournier.
542         * MongoDB plugin: A memory leak has been fixed and some adaptations to
543           the current API of the mongo-c-driver have been made. Thanks to
544           Florian Forster. #956
545         * Network plugin: A check for the initialization of secure memory has
546           been added. Previously, failure to initialize this memory was ignored.
547           Thanks to @yujokang. #1665
548         * Network plugin: A heap overflow has been fixed in the server code.
549           This issue can be triggered remotely and is potentially exploitable.
550           Thanks to Emilien Gaspar. CVE-2016-6254
551         * Network plugin: The TimeToLive option handling was made more robust.
552           Thanks to Tim Laszlo. #654
553         * NTPd plugin: Documentation about the required "mode 7" has been added.
554           Thanks to Jakub Jankowski.
555         * NTPd plugin: Reporting of "time_offset-loop" was corrected to match
556           the values from ntpq/ntpdc. Thanks to Pierre Fersing and Florian
557           Forster. #1300
558         * OpenVPN plugin: The plugin was fixe to avoid signaling an error when
559           no clients were connected. Thanks to Florian Forster. #731
560         * Perl plugin: Init callbacks have been changed to run essentially
561           single-threaded to avoid race conditions by init functions which
562           create additional threads. Thanks to Pavel Rochnyack. #1706
563         * PF plugin and DNS plugin: These plugins have been fixed to build
564           properly on OpenBSD again. Thanks to Ruben Kerkhof.
565         * Processes plugin: A compilation error on systems without "regex.h" has
566           been fixed. Thanks to Corey Kosak.
567         * Processes plugin: A memory leak on Solaris has been fixed. Thanks to
568           Jim Quinn.
569         * Processes plugin and Swap plugin: These plugins have been corrected to
570           also work inside FreeBSD jails. Thanks to biancalana. #1019
571         * Processes plugin: A warning about too long process names has been
572           added. Thanks to Marc Fournier. #1284
573         * Processes plugin: Process counting on the FreeBSD and OpenBSD
574           platforms has been fixed. Thanks to Herve COMMOWICK. #1298
575         * Processes plugin: The plugin was fixed to work properly on Solaris.
576           Thanks to Jan Andres. #919
577         * Python plugin: A double-free bug got fixed. Thanks to Sven Trenkel.
578           #1285
579         * RRDtool plugin: A race condition leading to corrupt RRD file creation
580           has been fixed. Thanks to Manuel Luis Sanmartín Rozada. #1031
581         * SNMP plugin: The "Gauge32" signedness was corrected to match RFC1902.
582           Thanks to Nathan Ward. #1325
583         * StatsD plugin: A deadlock on plugin shutdown has been fixed. Thanks to
584           Pavel Rochnyack #1703
585         * StatsD plugin: A memory leak was corrected. Thanks to Florian Forster.
586           #997
587         * StatsD plugin: A symbol lookup error was fixed by properly linking the
588           plugin against libm. Thanks to Florian Forster.
589         * StatsD plugin: "utils_latency": Support for including values above
590           1000 in percentile calculation has been added. Thanks to Yoga
591           Ramalingam. #401
592         * StatsD plugin: "utils_latency": Two division by zero error conditions
593           have been corrected. Thanks to Wilfried Goesgens. #655
594         * StatsD plugin: Counters absolute counts are now also reported. Thanks
595           to Pierre-Yves Ritschard. #1311
596         * StatsD plugin: The plugin now emits NaN values when no timer event is
597           recorded. Thanks to Florian Forster. #1038, #1039
598         * StatsD plugin: The plugin was corrected to avoid crashing when
599           negative timer values are submitted. Thanks to Florian Forster. #1131
600         * Tail CSV plugin: The plugin was fixed to work properly with multiple
601           "Collect" options and a bug got fixed when no "TimeFrom" is specified.
602           Thanks to Manuel Luis Sanmartín Rozada and Florian Forster. #1032
603         * TCPConns plugin: A memory leak was fixed. Thanks to Florian Forster.
604           #1074
605         * TCPConns plugin: An bug causing collectd to enter an inifinite loop on
606           OpenBSD was fixed. Thanks to Landry Breuil. #1094
607         * Threshold plugin: Threshold configuration blocks can now be defined in
608           different files. Thanks to Michael Salmon. #551
609         * vmem plugin: Support for pgsteal in recent Linux kernels has been
610           added. Thanks to Jakub Jankowski. #1307
611         * vmem plugin: The DSType for nr_dirtied and nr_written was corrected to
612           report a derive. Thanks to Marek Becka. #1072
613         * Write Graphite plugin: Error handling when submitting metrics to the
614           server is now more robust. Thanks to Sam Pointer. #1364
615         * Write HTTP plugin: Freeing of memory holding HTTP headers during
616           shutdown has been fixed. Thanks to Tolga Ceylan.
617         * Write Redis plugin: Multi-Valued key was made easier to parse by
618           adding a "|" character as a delimiter. Thanks to brianpkelly and
619           Florian Forster. #1070
620         * Write Redis plugin: The timestamp format was corrected. Thanks to
621           Florian Forster.
622         * ZFS ARC plugin: The plugin was will not emit warning about missing
623           "l2_size" stats anymore. Thanks to Jan Andres. #919
624         * 152 patches have been applied to numerous plugins and core components,
625           fixing various programming errors which were reported by scan-build,
626           libasan, FBInfer, coverity-scan, clang and gcc-6: Thanks to Ruben
627           Kerkhof, Florian Forster, Marc Fournier, Corey Kosak, Laurent,
628           Claudius Zingerli and Fabien Wernli.
629
630 2015-02-26, Version 5.4.2
631         * Build system: Numerous fixes. Thanks to Bjørn Nordbø, Jim Radford,
632           KOMEDA Shinji, Lauri Tirkkonen, Manuel Luis Sanmartin Rozada, Marc
633           Fournier, Rainer Müller, Yoga Ramalingam and Yves Mettier. #326,
634           #373, #653, #828
635         * collectd: A use-after-free has been fixed in the "parse_value()"
636           function. Thanks to Matthias Urlichs.
637         * collectd: Fix carriage return sign in types_list Thanks to Marc
638           Fournier and @NsLib.
639         * collectd: Fix programming error in src/configfile.c. Thanks to
640           Wilfried Goesgens.
641         * collectd: An off-by-one error has been fixed in the
642           "strstripnewline()" function. Patch by Florian Forster.
643         * collectd: Use the complain mechanism to report filter chain write
644           failures. Thanks to Sebastian Harl.
645         * collectd: Spelling and grammar of error messages have been fixed.
646           Thanks to Katelyn Perry and Tim Laszlo.
647         * collectdctl: Fixed buffering issues which caused trouble on AIX and
648           Solaris. Thanks to Yoga Ramalingam.
649         * Documentation: Details and example about multi-instance filterchain
650           targets have been added. Thanks to Marc Fournier.
651         * Documentation: The "CollectStatistics" option of the rrdcached has
652           been documented. Thanks to Micha Krause. #907
653         * Documentation: The write_redis has been documented. Thanks to Marc
654           Fournier.
655         * Documentation: The "GraphiteSeparateInstances" and
656           "GraphiteAlwaysAppendDS" options of the amqp have been documented.
657           Thanks to Marc Fournier.
658         * Documentation: Documentation of the "AutoLoadPlugin" option has been
659           improved. Thanks to Florian Forster. #715
660         * aggregation: "utils_vl_lookup": A race when creating user objects
661           has been fixed. Thanks to Sebastian Harl. #535
662         * cpu: Temperature code for Mac&nbsp;OS&nbsp;X has been removed.
663           Thanks to Florian Forster and Marc Fournier. #22
664         * cURL, cURL-JSON, cURL-XML and Write HTTP plugins: Call
665           "curl_global_init()" in the plugins' "init()" callback. Thanks to
666           Jeremy Katz.
667         * cURL and memcachec plugins: Fix calculation of gauge, average,
668           minimum and maximum. Previously, they were calculated from the start
669           of the daemon, which is not the documented behavior. Thanks to
670           Florian Forster. #663
671         * curl-json: A bug, which triggered when two URLs with a long common
672           prefix were configured, was fixed. Thanks to Marc Fournier. #582
673         * dbi: Compatibility with new versions of libdbi has been restored.
674           Thanks to Florian Forster. #950
675         * Exec, UnixSock plugins: Fix parsing of the "time" option of the
676           "PUTNOTIF" command. Thanks to Adrian Miron. #477
677         * ipmi: A conflict with the java over the "SIGUSR2" signal has been
678           fixed. Thanks to Vincent Bernat. #114
679         * java: Conversion from Java's time representation to collectd's
680           representation has been fixed. Thanks to Manuel Luis Sanmartín
681           Rozada.
682         * java: Make sure "cjni_thread_detach()" is called on all paths.
683           Thanks to Florian Forster.
684         * LogFile and SysLog plugins: Avoid total silence in case of a
685           misconfiguration. Thanks to Marc Fournier and Wilfried Goesgens.
686         * network: Support for recent versions of gcrypt has been added.
687           Thanks to Vincent Bernat. #632
688         * network: Robustness of the client connecting behavior has been
689           improved. Thanks to Florian Forster. #627
690         * python: Don't create empty "meta_data_t" objects. Thanks to Florian
691           Forster. #716
692         * python: Fix Py list length check in "cpy_build_meta()". Thanks to
693           Yoga Ramalingam.
694         * python: The "interval" member was fixed to export seconds as a
695           double. Thanks to Justin Burnham.
696         * RRDtool and RRDCacheD plugins: A memory leak when creating RRD files
697           has been fixed. Thanks to Yves Mettier. #661
698         * snmp: Fix a memory leak. Thanks to Marc Fournier and Pierre-Yves
699           Ritschard. #610, #804
700         * statsd: Support for samplerates in timer metrics was added. Thanks
701           to John Leach. #461
702         * swap: Fix behavior under OpenVZ by making "cached" optional. Thanks
703           to Florian Forster. #733
704         * threshold: Population of the "time" field in notifications has been
705           added. Thanks to Manuel Luis Sanmartín Rozada.
706         * libvirt: Only gather stats for running domains. Thanks to Ruben
707           Kerkhof.
708         * lvm: An issue with Volume Groups (VGs) without Logical Volumes (LVs)
709           has been fixed. Thanks to Jan Kundrát.
710         * write_graphite: Escape characters not supported by Graphite. Thanks
711           to Pierre-Yves Ritschard and Marc Fournier.
712         * write_http: Make callback names context-dependent. Thanks to Marc
713           Fournier. #821
714         * write_redis: A formatting bug, which resulted in totally unusable
715           numbers being transmitted to Redis, was fixed. Thanks to Marc
716           Fournier.
717         * write_riemann: Receive acknowledge message when using TCP. Thanks to
718           John-John Tedro.
719
720 2014-01-26, Version 5.4.1
721         * amqp plugin: Add support for RabbitMQ 0.4.x to avoid compiler
722           warnings. Thanks to Sebastian Harl for implementing this.
723         * apache / network plugins: Improved initialization order hopefully
724           resolved gcrypt initialization problems.
725         * aquaero plugin: The type used to submit fan utilization was fixed.
726           Thanks to Alex Deymo for the patch.
727         * cgroups plugin: A small memory leak was fixed. Checking the existence
728           of a mount option without a value was fixed. More permissive parsing
729           of the cpuacct.stats file fixes support for some versions of Linux.
730           Thanks to Marc Fournier for bug reports and patches.
731         * curl plugin: Fix <Match> blocks without an instance. Thanks to
732           Alexander Golovko for reporting and Sebastian Harl for fixing this.
733         * curl_json plugin: Potentially invalid memory access has been
734           sanitized. Thanks to Jim Radford for his patch.
735         * interface plugin: Fix behavior under FreeBSD 10: Reporting of
736           per-address statistics caused duplicate updates to the same metric.
737           Thanks to demon / @trtrmitya for the patch.
738         * write_graphite plugin: Use TCP to connect to Graphite by default. The
739           default changed from TCP to UDP between 5.3.1 and 5.4.0, which is a
740           regression. Thanks to Marc Fournier for fixing this. Reconnect
741           behavior was improved. Thanks to Michael Hart for his patch.
742         * zfs_arc plugin: Collect "allocated" and "stolen" on FreeBSD only.
743
744 2013-08-18, Version 5.4.0
745         * collectd: The "LoadPlugin" config option no longer attempts to load
746           plugins twice. If more than one "LoadPlugin" statement or block is
747           encountered, only the first will have any effect.
748         * collectd: The "AutoLoadPlugin" option allows to automatically load
749           plugins for which a configuration is found.
750         * collectd: The "WriteQueueLimitHigh" and "WriteQueueLimitLow" options
751           allow collectd to drop values when under stress, to avoid running out
752           of memory. Thanks to Yves Mettier for his patch.
753         * amqp plugin: The "GraphiteSeparateInstances" and
754           "GraphiteAlwaysAppendDS" options have been added. Thanks to Laurent
755           for the patch.
756         * aquaero plugin: This new plugin reads various metrics, e.g. fan
757           speeds and temperatures, from Aquaero 5, a fan and water cooling
758           control panel. Thanks to Alex Deymo for his patch.
759         * curl plugin: The "MeasureResponseCode" option has been added. Thanks
760           to Jan Matějka for his patch.
761         * curl_json plugin: Support for UNIX domain sockets and array wildcards
762           has been added. Thanks to Jim Radford for his patch.
763         * curl_xml plugin: Support for long URLs has been improved.
764         * cgroups plugin: This new plugin collects CPU accounting information
765           for processes in a cgroup. Thanks to Michael Stapelberg for his patch.
766         * df plugin: The "ValuesAbsolute" and "ValuesPercentage" options have
767           been added. Thanks to Vedran Bartonicek for the patch.
768         * exec plugin: Do UID / GID lookups before forking. This should prevent
769           a race condition in the NSS library. Thanks to Ceri Storey for the
770           patch.
771         * lvm plugin: This new plugin collects size information from Linux'
772           Logical Volume Manager (LVM). Thanks to Chad Malfait for his work.
773         * memcached plugin: Support for increment and decrement counts has been
774           added. Thanks to Blake Matheny for the patch.
775         * mic plugin: This new plugin collects CPU and memory usage, power
776           consumption and temperatures of Intel's Many-Integrated-Core (MIC)
777           architecture, such as Xeon Phi cards. Thanks to Evan Felix for his
778           work.
779         * netlink plugin: This plugin has been converted to use the supported
780           "libmnl" library. Thanks to Andreas Henriksson for his patch.
781         * nginx plugin: Collection of accepted and handled connections has been
782           added. Thanks to Patrick Shan for his patch.
783         * sigrok plugin: This new plugin collects metrics from sigrok, a signal
784           processing framework reading various hardware devices, from light
785           meters to spectrum analyzers. Thanks to Bert Vermeulen for his patch.
786         * statsd plugin: This new plugin listens to a UDP socket and reads
787           metrics in the StatsD format.
788         * varnish plugin: Many additional metrics have been added. Thanks to
789           Nick Stenning for his patch.
790         * write_graphite plugin: Support for "UDP" has been added. Thanks to
791           Javier Maestro for his patch.
792         * write_riemann plugin: The "TTLFactor" option has been added.
793         * zfs_arc plugin: Support for FreeBSD has been added. Thanks to Xin Li
794           for his patch.
795
796 2015-02-26, Version 5.3.2
797         * Build system: Numerous fixes. Thanks to Bjørn Nordbø, Jim Radford,
798           KOMEDA Shinji, Lauri Tirkkonen, Manuel Luis Sanmartin Rozada, Marc
799           Fournier, Rainer Müller, Yoga Ramalingam and Yves Mettier. #326,
800           #373, #653, #828
801         * collectd: A use-after-free has been fixed in the "parse_value()"
802           function. Thanks to Matthias Urlichs.
803         * collectd: Fix carriage return sign in types_list Thanks to Marc
804           Fournier and @NsLib.
805         * collectd: Fix programming error in src/configfile.c Thanks to
806           Wilfried Goesgens.
807         * collectd: An off-by-one error has been fixed in the
808           "strstripnewline()" function. Patch by Florian Forster.
809         * collectd: Use the complain mechanism to report filter chain write
810           failures. Thanks to Sebastian Harl.
811         * collectd: Spelling and grammar of error messages have been fixed.
812           Thanks to Katelyn Perry and Tim Laszlo.
813         * collectdctl: Fixed buffering issues which caused trouble on AIX and
814           Solaris. Thanks to Yoga Ramalingam.
815         * Documentation: Details and example about multi-instance filterchain
816           targets have been added. Thanks to Marc Fournier.
817         * Documentation: The "CollectStatistics" option of the rrdcached has
818           been documented. Thanks to Micha Krause. #907
819         * Documentation: The write_redis has been documented. Thanks to Marc
820           Fournier.
821         * Documentation: The synopsis of the threshold has been fixed. Thanks
822           to Fabien Wernli.
823         * Documentation: The "GraphiteSeparateInstances" and
824           "GraphiteAlwaysAppendDS" options of the amqp have been documented.
825           Thanks to Marc Fournier.
826         * aggregation: "utils_vl_lookup": A race when creating user objects
827           has been fixed. Thanks to Sebastian Harl. #535
828         * cpu: Temperature code for Mac&nbsp;OS&nbsp;X has been removed.
829           Thanks to Florian Forster and Marc Fournier. #22
830         * csv: A regression which would lead to the "DataDir" option to be
831           ignored has been fixed. Thanks to Manuel Luis Sanmartin Rozada.
832         * curl, curl-json, curl-xml and write_http plugins: Call
833           "curl_global_init()" in the plugins' "init()" callback. Thanks to
834           Jeremy Katz.
835         * curl and memcachec plugins: Fix calculation of gauge, average,
836           minimum and maximum. Previously, they were calculated from the start
837           of the daemon, which is not the documented behavior. Thanks to
838           Florian Forster. #663
839         * dbi plugin: Compatibility with new versions of libdbi has been
840           restored. Thanks to Florian Forster. #950
841         * exec, unixsock plugins: Fix parsing of the "time" option of the
842           "PUTNOTIF" command. Thanks to Adrian Miron. #477
843         * java: Conversion from Java's time representation to collectd's
844           representation has been fixed. Thanks to Manuel Luis Sanmartín
845           Rozada.
846         * ipmi: A conflict with the java over the "SIGUSR2" signal has been
847           fixed. Thanks to Vincent Bernat. #114
848         * java: Make sure "cjni_thread_detach()" is called on all paths.
849           Thanks to Florian Forster.
850         * logfile and syslog plugins: Avoid total silence in case of a
851           misconfiguration. Thanks to Marc Fournier and Wilfried Goesgens.
852         * memcached: Connecting to a UNIX socket has been fixed. Thanks to Jim
853           Radford.
854         * network: Support for recent versions of gcrypt has been added.
855           Thanks to Vincent Bernat. #632
856         * network: Robustness of the client connecting behavior has been
857           improved. Thanks to Florian Forster. #627
858         * python: Don't create empty "meta_data_t" objects. Thanks to Florian
859           Forster. #716
860         * python: Fix Py list length check in "cpy_build_meta()". Thanks to
861           Yoga Ramalingam.
862         * python: The "interval" member was fixed to export seconds as a
863           double. Thanks to Justin Burnham.
864         * replace and set targets: Fix error message. Thanks to Marc Fournier.
865           #448
866         * rrdtool and rrdcached plugins: Honor the "DataDir" config option;
867           this fixes a regression. Thanks to Florian Forster. #380
868         * rrdtool and rrdcached plugins: A memory leak when creating RRD files
869           has been fixed. Thanks to Yves Mettier. #661
870         * snmp: Fix a memory leak. Thanks to Marc Fournier and Pierre-Yves
871           Ritschard. #610, #804
872         * swap: Fix behavior under OpenVZ by making "cached" optional. Thanks
873           to Florian Forster. #733
874         * threshold: Population of the "time" field in notifications has been
875           added. Thanks to Manuel Luis Sanmartín Rozada.
876         * libvirt: Only gather stats for running domains. Thanks to Ruben
877           Kerkhof.
878         * write_graphite: Escape characters not supported by Graphite. Thanks
879           to Pierre-Yves Ritschard and Marc Fournier.
880         * write_http: Make callback names context-dependent. Thanks to Marc
881           Fournier. #821
882         * write_riemann: Receive acknowledge message when using TCP. Thanks to
883           John-John Tedro.
884
885 2013-07-13, Version 5.3.1
886         * Documentation: Various fixes.
887         * Configuration: Fix error handling: Errors in included files were
888           ignored, causing configuration mistakes to go unnoticed.
889         * dns plugin: Don't abort when PCAP returns an error.
890         * modbus plugin: The reconnection strategy was improved, fixing a
891           segfault in the libmodbud library. Thanks to Stefan Nickl and
892           Fabien Wernli for their patches.
893         * mysql plugin: The notification about a newly running MySQL slave
894           thread has been fixed. Thanks to Joaquín Cuenca Abela for the patch.
895         * snmp plugin: A build issue has been fixed (C99 mixed declaration).
896           The end-of-tree check has been improved by Pierre-Yves Ritschard.
897         * threshold plugin: Handling of the "Interesting" configuration option
898           has been fixed. Thanks to Björn for the patch.
899         * write_riemann plugin: A memory leak has been fixed. Thanks to Dave
900           Cottlehuber for reporting it.
901
902 2013-04-09, Version 5.3.0
903         * collectd: The "Include" statements can now be limited to include
904           only matching files in a directory. Thanks to Sebastian Harl for his
905           patch.
906         * collectd: Dispatches / writes are now handled by a thread pool. This
907           improves reliability and throughput for instances configured to act
908           as a "server". Thanks to Sebastian Harl and Dan Fandrich for
909           reviewing this change and fixing bugs.
910         * aggregation plugin: Selection of value lists is now possible using
911           regular expressions. Parts of the identifier of the resulting metric
912           can now be set via the configuration file.
913         * apcups plugin: The "ReportSeconds" option has been implemented.
914         * curl* plugins: Support for POST requests and custom request headers
915           has been added. Thanks to Dan Fandrich for his patch.
916         * curl_xml plugin: Support for XML namespaces has been added. Thanks
917           to Dan Fandrich for his patch.
918         * dbi plugin: Support for numeric options has been added. The
919           "Host" option has been added. Thanks to Daniel Hilst for his patch.
920         * disk plugin: Support for systems with >256 has been fixed. Thanks to
921           Greg Mason for his patch.
922         * libvirt plugin: Support for memory allocation has been added. Thanks
923           to Johan Wirén for his patch.
924         * netapp plugin: Support for "SnapVault", "VFiler" and deduplication /
925           compression and quota metrics. Thanks to Sebastian Harl for his
926           patches and teamix GmbH for sponsoring this work.
927         * postgresql plugin: The reconnection logic has been improved. Thanks
928           to Sebastian Harl for his patches.
929         * rrdtool, rrdcached plugins: The "CreateFilesAsync" option has been
930           implemented. When enabled, new RRD files will be created
931           asynchronously, which improved throughput of "server" instances.
932           Many thanks to Yves Mettier for all his input and code.
933         * tail_csv plugin: This new plugins allows to read metrics from CSV
934           files, such as Snort's statistics file. Thanks to Kris Nielander for
935           his patch.
936         * write_mongodb plugin: Authentication options have been added.
937         * write_riemann plugin: This new plugin allows sending metrics to
938           Riemann, a stream processing and alerting tool. Big thanks to
939           Pierre-Yves Ritschard for his work.
940
941 2013-04-08, Version 5.2.2
942         * Build system: A bad interaction between the Java detection code and
943           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
944           Installation of the Perl bindings has been improved / fixed. Thanks
945           to Sebastian Harl for his patch.
946         * collectd: Fixed read callback scheduling at startup.
947         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
948           write_http plugins: Portability fixes, protection from infinite
949           redirect loops, improved error handling and incorrect dereferences
950           have been fixed. Most of these are related to the cURL library.
951           Thanks to Dan Fandrich for his patches.
952         * logfile plugin: Flush the output file handle. This works around
953           caching when logging to STDOUT and redirecting into a file. Thanks
954           to Nathan Huff for the patch.
955         * mysql plugin: Fix a memory leak in the error handling. Thanks to
956           Tomas Doran for his patch.
957         * netapp plugin: Fix the interval with which values are dispatched.
958         * network plugin: Build issues under FreeBSD and initialization have
959           been fixed. Thanks to Ed Schouten for his patch.
960         * nfs plugin: A compilation problem has been fixed.
961         * notify_email plugin: Add a character set to the mail header. Thanks
962           to Manuel Cissé for his patch.
963         * pf plugin: Build issues have been fixed.
964         * postgresql plugin: Build issues have been fixed.
965         * rrdcached plugin: Connect to the daemon from the read callback.
966         * snmp plugin: Matching of SNMP subtrees has been improved. Thanks to
967           "jkrabbe" for the patch.
968         * thermal plugin: The initialization of dispatched value lists has
969           been fixed. Thanks to Markus Knetschke for his patch.
970         * unixsock plugin: Parsing of options with an underscore, e.g.
971           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
972           patch.
973
974 2013-01-27, Version 5.2.1
975         * Build system: "make distcheck" has been fixed. Build fixes Solaris
976           and systems without gcrypt. Thanks to Yves Mettier for his patches.
977         * collectd: The complaint mechanism was fixed. It reported messages
978           more frequently than intended.
979         * collectd-tg: A manual page has been added.
980         * dns plugin: Build issues on FreeBSD have been fixed. Thanks to
981           Ed Schouten for his patch.
982         * ethstat plugin: Fix the "Map" config option. An incorrectly used
983           character pointer may lead to a segmentation fault.
984         * network plugin: Build issues on FreeBSD have been fixed. Thanks to
985           Ed Schouten for his patch.
986         * postgresql plugin: A memory leak in the writing code has been fixed.
987           A use-after-free issue that happened when more than one database was
988           configured was fixed. Thanks to Sebastian Harl for fixing these
989           problems.
990         * redis plugin: A build failure has been fixed. Thanks to Pierre-Yves
991           Ritschard for his patch.
992         * varnish plugin: Fix a problem with instances without name.
993         * write_graphite plugin: A regression which rendered the
994           "SeparateInstances" and "AlwaysAppendDS" options unusable has been
995           fixed. A failed assertion when using types with many data sources
996           has been fixed. Improve reporting of connection errors to not spam
997           log files too much. Thanks to Pierre-Yves Ritschard for reporting
998           the logging problem.
999         * zfs_arc plugin: Fix the type used for mutex misses. Thanks to Yves
1000           Mettier for reporting this bug.
1001
1002 2012-11-17, Version 5.2.0
1003         * collectd: The performance of the LISTVAL command has been improved.
1004           Thanks to Yves Mettier for the patch.
1005         * collectd: The possibility to configure the collection interval on a
1006           per-plugin basis has been added. Huge thanks to Sebastian Harl for
1007           his work.
1008         * collectd-tg: This new binary allows to generate random but real
1009           looking collectd network traffic. This can be used to load-test new
1010           plugin, for example.
1011         * libcollectdclient: Code for constructing and sending network packets
1012           in the binary format has been added.
1013         * aggregation plugin: This new plugin allows to aggregate multiple
1014           value lists into one.
1015         * amqp and write_http plugins: Meta data is now included in the JSON
1016           output format. Thanks to Mark Wong for the patch.
1017         * amqp plugin: Support for "Graphite" output has been added. Thanks to
1018           Thomas Meson for the patch.
1019         * contextswitch plugin: Support for AIX has been added. Thanks to
1020           Manuel Rozada for his patch.
1021         * disk plugin: The "UseBSDName" config option has been added to the
1022           Mac OS X version.
1023         * GenericJMX plugin: Automatically determine the host name if it isn't
1024           configured.
1025         * libvirt plugin: The "number" interface format has been added. Thanks
1026           to "Davide Guerri" for the patch.
1027         * memcached plugin: Support for multiple connections has been added.
1028           Thanks to Nicolas Szalay for the patch.
1029         * ntpd plugin: The "IncludeUnitID" config option has been added. The
1030           behavior when a peer is unreachable has been improved. Thanks to
1031           Johan Kiviniemi for the patches.
1032         * oracle plugin: The "Host" config option has been added.
1033         * pf plugin: This new plugin allows to collect statistics from BSD's
1034           packet filter "pf". Thanks to Pierre-Yves Ritschard and Stefan Rinkes
1035           for their work.
1036         * postgresql plugin: The "Instance" config option has been added.
1037           Support for writing values to a PostgreSQL database has been added.
1038           Thanks to Sebastian Harl for the patches.
1039         * processes plugin: Support for Solaris has been added. Thanks to
1040           Cosmin Ioiart for the patch.
1041         * redis plugin: Support for authenticating via password has been added.
1042           Thanks to biancalana for the patch.
1043         * rrdcached plugin: The "HeartBeat", "RRARows", "RRATimespan",
1044           "StepSize" and "XFF" config options have been added.
1045         * swap plugin: The "ReportBytes" config option has been added. The AIX
1046           version now also exports "reserved" pages and swap-in / swap-out
1047           "traffic". Thanks to Manuel Rozada for the patch.
1048         * tcpconns plugin: Use a netlink socket rather than reading from /proc
1049           for improved performance. Thanks to Michael Stapelberg for the patch.
1050
1051 2013-04-08, Version 5.1.3
1052         * Build system: A bad interaction between the Java detection code and
1053           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
1054         * collectd: Fixed read callback scheduling at startup.
1055         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
1056           write_http plugins: Portability fixes, protection from infinite
1057           redirect loops, improved error handling and incorrect dereferences
1058           have been fixed. Most of these are related to the cURL library.
1059           Thanks to Dan Fandrich for his patches.
1060         * logfile plugin: Flush the output file handle. This works around
1061           caching when logging to STDOUT and redirecting into a file. Thanks
1062           to Nathan Huff for the patch.
1063         * mysql plugin: Fix a memory leak in the error handling. Thanks to
1064           Tomas Doran for his patch.
1065         * netapp plugin: Fix the interval with which values are dispatched.
1066         * network plugin: Build issues under FreeBSD and initialization have
1067           been fixed. Thanks to Ed Schouten for his patch.
1068         * nfs plugin: A compilation problem has been fixed.
1069         * notify_email plugin: Add a character set to the mail header. Thanks
1070           to Manuel Cissé for his patch.
1071         * rrdcached plugin: Connect to the daemon from the read callback.
1072         * snmp plugin: Matching of SNMP subtrees has been improved. Thanks to
1073           "jkrabbe" for the patch.
1074         * thermal plugin: The initialization of dispatched value lists has
1075           been fixed. Thanks to Markus Knetschke for his patch.
1076         * unixsock plugin: Parsing of options with an underscore, e.g.
1077           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
1078           patch.
1079
1080 2013-01-25, Version 5.1.2
1081         * Build system: "make distcheck" has been fixed. Thanks to Yves
1082           Mettier for his patches.
1083         * collectd: The complaint mechanism was fixed. It reported messages
1084           more frequently than intended.
1085         * dns plugin: Build issues on FreeBSD have been fixed. Thanks to
1086           Ed Schouten for his patch.
1087         * ethstat plugin: Fix the "Map" config option. An incorrectly used
1088           character pointer may lead to a segmentation fault.
1089         * network plugin: Build issues on FreeBSD have been fixed. Thanks to
1090           Ed Schouten for his patch.
1091         * varnish plugin: Fix a problem with instances without name.
1092         * write_graphite: Improve reporting of connection errors to not spam
1093           log files too much. Thanks to Pierre-Yves Ritschard for reporting
1094           this problem.
1095         * zfs_arc plugin: Fix the type used for mutex misses. Thanks to Yves
1096           Mettier for reporting this bug.
1097
1098 2012-11-11, Version 5.1.1
1099         * collectd: Create new directories with mode 0777 and let umask remove
1100           unwanted permission bits.
1101         * collectd: Build issues have been fixed.
1102         * collectd: An incorrect assertion has been fixed in some common code
1103           for Solaris. This should resolve pseudo-random assertion failures
1104           under Solaris. Thanks to Jeff Blane for his help debugging this.
1105         * collectd: A couple of memory leaks through PThread thread attributes
1106           have been fixed. Thanks to Gerrie Roos for fixing these.
1107         * collectdctl: Fix PUTVAL for data sets with multiple data sources.
1108           Thanks to Cyril Feraudet for reporting this problem.
1109         * contrib/migrate-4-5.px: Handle to "df" to "df_complex" conversion
1110           correctly.
1111         * apcups plugin: Improve the reconnect behavior.
1112         * curl_xml plugin: The "Host" setting was silently ignored. Thanks to
1113           Fabien Wernli for fixing this.
1114         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
1115           reported twice. Thanks to Brune Prémont for fixing this.
1116         * disk plugin: Fix incorrect computation of read and write latency (the
1117           "disk_time" type). Previously, the numbers reported where too small
1118           by a factor of "interval", e.g. when the interval is set to 10
1119           seconds, the values were too low by a factor of 10. Thanks to Manuel
1120           Sanmartin for reporting this problem.
1121         * dns plugin: A build issue under Solaris has been fixed. A erroneous
1122           define that could lead to the reporting of bad data has been fixed by
1123           Daniel Sutto.
1124         * ethstat plugin: An off-by-one error and potential use of
1125           uninitialized memory has been fixed. Thanks to Mark Voelker for
1126           reporting these problems.
1127         * memcachec plugin: A bug in the configuration handling has been fixed.
1128           Thanks to Pascal Hofmann for fixing this issue.
1129         * mysql plugin: Fix a bug when registering multiple databases. Thanks
1130           to Sebastian Harl for fixing this.
1131         * netapp plugin: Correctly close the connection on communication
1132           errors.
1133         * netlink plugin: The function used to query statistics has been
1134           changed to be more in line with iproute2's behavior. Thanks to
1135           "KIvosak" for the patch.
1136         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
1137           Chris Lundquist for his patch.
1138         * oracle plugin: Error messages have been improved.
1139         * ping plugin: Don't enter the exponential back-off mode when
1140           ping_send() fails. This should make recovery after a network failure
1141           much faster.
1142         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
1143           and Sven Trenkel for fixing this.
1144         * redis plugin: Fix a compilation problem on FreeBSD. Thanks to
1145           "biancalana" for the fix.
1146         * rrdtool plugin: Fix an out-of-bounds array access when printing a
1147           warning message. Thanks to Will Hawkins for fixing this bug.
1148         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
1149           added. Support for more complex / unusual MIBs / subtrees has been
1150           added. Thanks to Mark Juric to test the changes and point out these
1151           problems.
1152         * varnish plugin: Support for multiple instances of Varnish 3 has been
1153           fixed. Thanks to Jonathan Huot for the patch.
1154         * write_mongodb plugin: Add compatibility with libmongo 0.6.0 and
1155           later. Thanks to Chris Lundquist for this patch.
1156
1157 2012-04-01, Version 5.1.0
1158         * Build system, iptables plugin: The shipped version of libiptc has
1159           been removed.
1160         * collectd-nagios: A list of value lists can now be queried using
1161           "-n LIST". Thanks to Sebastian Harl for his patches.
1162         * bind plugin: The "ParseTime" option has been added. It allows to use
1163           the system time rather than the time reported by BIND.
1164         * curl, memcachec, tail plugins: The "ExcludeRegexp" option has been
1165           added. Thanks to Peter Warasin for his initial patch.
1166         * ethstat plugin: The new "ethstat" plugin reads performance statistics
1167           directly from ethernet cards. Thanks to Cyril Feraudet for his patch.
1168         * GenericJMX plugin: Support for querying MBean "Operations" (in
1169           addition to "Attributes") has been added. Thanks to Pierre-Yves
1170           Ritschard for his patch.
1171         * irq plugin: The selection / ignore code now uses the default
1172           ignorelist infrastructure, providing the standard feature set, e.g.
1173           regex matching.
1174         * md plugin: The new "md" plugin reports the number of disks in various
1175           states in Linux software RAID devices. Thanks to Michael Hanselmann
1176           for his patch.
1177         * modbus plugin: Support for signed integer register types has been
1178           added.
1179         * nfs plugin: Support for Solaris has been added. Thanks to Cosmin
1180           Ioiart for his patch.
1181         * numa plugin: The new "numa" plugin reports statistics of the
1182           Non-Uniform Memory Access (NUMA) subsystem of Linux.
1183         * processes plugin: Various fixes for the FreeBSD implementation.
1184           Thanks to Phil Kulin for his patch.
1185         * rrdcached plugin: Passing flushes to the caching daemon has been
1186           added.
1187         * sensors plugin: The initialization code has been improved. Thanks to
1188           Henrique de Moraes Holschuh for his patch.
1189         * swap plugin: The "ReportByDevice" option has been added.
1190         * syslog plugin: Support for writing notifications has been added.
1191           Thanks to Fabien Wernli for his patch.
1192         * tcpconns plugin: Support for AIX has been added. Thanks to Manuel
1193           Luis Sanmartín Rozada for his patch.
1194         * threshold plugin: The "PersistOK" option has been added. Thanks to
1195           Aaron Brady for his patch.
1196         * varnish plugin: Support for Varnish 3.0 has been added. Thanks to
1197           Jérôme Renard for his patches.
1198         * write_mongodb plugin: The new "write_mongodb" plugin writes value
1199           lists to MongoDB, a shema-less database. Thanks to Akkarit Sangpetch
1200           and Chris Lundquist for their work.
1201         * write_graphite plugin: The new "write_graphite" plugin writes value
1202           lists to Carbon, the storage layer of the Graphite time-series
1203           database. Thanks to Scott Sanders and Pierre-Yves Ritschard for their
1204           work.
1205         * zfs_arc plugin: Several new statistics have been added. Thanks to
1206           Aurelien Rougemont for his patches.
1207         * scale target: Support for scaling specific data sources only has been
1208           added. Thanks to Gerrie Roos for his patch.
1209
1210 2012-11-11, Version 5.0.5
1211         * collectd: Create new directories with mode 0777 and let umask remove
1212           unwanted permission bits.
1213         * collectd: Build issues have been fixed.
1214         * collectd: An incorrect assertion has been fixed in some common code
1215           for Solaris. This should resolve pseudo-random assertion failures
1216           under Solaris. Thanks to Jeff Blane for his help debugging this.
1217         * collectd: A couple of memory leaks through PThread thread attributes
1218           have been fixed. Thanks to Gerrie Roos for fixing these.
1219         * collectdctl: Fix PUTVAL for data sets with multiple data sources.
1220           Thanks to Cyril Feraudet for reporting this problem.
1221         * contrib/migrate-4-5.px: Handle to "df" to "df_complex" conversion
1222           correctly.
1223         * apcups plugin: Improve the reconnect behavior.
1224         * curl_xml plugin: The "Host" setting was silently ignored. Thanks to
1225           Fabien Wernli for fixing this.
1226         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
1227           reported twice. Thanks to Brune Prémont for fixing this.
1228         * disk plugin: Fix incorrect computation of read and write latency (the
1229           "disk_time" type). Previously, the numbers reported where too small
1230           by a factor of "interval", e.g. when the interval is set to 10
1231           seconds, the values were too low by a factor of 10. Thanks to Manuel
1232           Sanmartin for reporting this problem.
1233         * dns plugin: A build issue under Solaris has been fixed. A erroneous
1234           define that could lead to the reporting of bad data has been fixed by
1235           Daniel Sutto.
1236         * memcachec plugin: A bug in the configuration handling has been fixed.
1237           Thanks to Pascal Hofmann for fixing this issue.
1238         * mysql plugin: Fix a bug when registering multiple databases. Thanks
1239           to Sebastian Harl for fixing this.
1240         * netapp plugin: Correctly close the connection on communication
1241           errors.
1242         * netlink plugin: The function used to query statistics has been
1243           changed to be more in line with iproute2's behavior. Thanks to
1244           "KIvosak" for the patch.
1245         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
1246           Chris Lundquist for his patch.
1247         * oracle plugin: Error messages have been improved.
1248         * ping plugin: Don't enter the exponential back-off mode when
1249           ping_send() fails. This should make recovery after a network failure
1250           much faster.
1251         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
1252           and Sven Trenkel for fixing this.
1253         * redis plugin: Fix a compilation problem on FreeBSD. Thanks to
1254           "biancalana" for the fix.
1255         * rrdtool plugin: Fix an out-of-bounds array access when printing a
1256           warning message. Thanks to Will Hawkins for fixing this bug.
1257         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
1258           added. Support for more complex / unusual MIBs / subtrees has been
1259           added. Thanks to Mark Juric to test the changes and point out these
1260           problems.
1261
1262 2012-04-01, Version 5.0.4
1263         * Build system: Fix the use of a libltdl macro. Thanks to Clemens Lang
1264           for fixing this. Adresses some issues with building the iptables
1265           plugin under Gentoo.
1266         * libcollectdclient: A memory leak in the lcc_getval() function has
1267           been fixed. Thanks to Jason Schmidlapp for finding and fixing this
1268           issue.
1269         * bind plugin: The use of 'QType" types has been fixed.
1270         * df plugin: Fixed compiler issue under Mac OS X 10.7.
1271         * conntrack plugin: Support zero as legitimate value. Thanks to Louis
1272           Opter for his patch.
1273         * memcached plugin: Increased the size of a static buffer, which was
1274           truncating status messages form memcached. Thanks to Timon for the
1275           patch.
1276         * network plugin: Forwarding of notifications has been disabled. This
1277           was a contition not checked for before, which may retult in an
1278           endless loop.
1279         * processes plugin: Support for process names with spaces has been
1280           added to the Linux implementation. Thanks to Darrell Bishop for his
1281           patch.
1282         * perl plugin: A race condition in several callbacks, including log and
1283           write callbacks, has been fixed. Thanks to "Rrpv" for reporting this
1284           bug.
1285         * snmp plugin: A bug when casting unsigned integers to gauge values has
1286           been fixed: Unsigned integers would be cast to a signed integer and
1287           then to a gauge, possibly resulting in a negative value.
1288         * tcpconns plugin: Compilation with newer versions of the FreeBSD
1289           runtime has been fixed.
1290
1291 2012-02-19, Version 5.0.3
1292         * Build system: Fix problems when building the ipvs and iptables
1293           plugins. Thanks to Sebastian Harl for his patch. A bashism in the
1294           version-gen.sh script has been fixed. Thanks to Jo-Philipp Wich for
1295           his patch.
1296         * csv and rrdtool plugins: Print a more helpful error message when the
1297           DataDir is a symlink pointing to a non-existing location. Thanks to
1298           Jonathan Nieder for his patch.
1299         * exec plugin: Fix a problem when using select(2) to read from file
1300           handles. Thanks to Gerrie Roos for his patch.
1301         * network plugin: An incorrect error message in the handling of the
1302           "Interface" configuration option has been fixed. Thanks to Gerrie
1303           Roos for his patch.
1304         * oracle plugin: A potential endless loop in the error handling has
1305           been fixed.
1306         * python plugin: A crash bug in the configuration handling has been
1307           fixed. Thanks to Sven Trenkel for his patch.
1308         * interfaces plugin: The change which was supposed to ignore "bogus"
1309           interfaces has been reverted, since it ignored legit interfaces, such
1310           as bonding pseudo-devices as well.
1311
1312 2012-01-21, Version 5.0.2
1313         * curl_xml plugin: Fix handling of file:// and other URLs (which don't
1314           follow HTTP status codes). Thanks to Fabien Wernli for his patch!
1315         * df plugin: Fix handling of negative "available" counts. This can
1316           occur with some file systems, for example UFS. Thanks to Toni Ylenius
1317           for his patch.
1318         * interface plugin: "mac" interfaces are now ignored on Solaris. These
1319           pseudo-interfaces occur multiple times, causing warnings. Also switch
1320           to 64-bit counters on Solaris, improving overflow behavior for
1321           high-speed interfaces. Thanks to Eddy Geez and Fabien Wernli for
1322           their patches.
1323         * memory plugin: Account kernel and unused memory under Solaris. Thanks
1324           to Fabien Wernli for his patch.
1325         * network plugin: A bug in the interaction between the Network plugin
1326           and filter chains has been fixed: When a filter modified a field such
1327           as the hostname, subsequent values in the same network packets could
1328           have ended up using the modified name rather than the original name.
1329           Thanks to Sebastian Harl for identifying the problem.
1330         * oracle plugin: A memory leak has been fixed in the parameter handling.
1331         * python plugin: A memory leak has been fixed. Thanks to Sven Trenkel
1332           for fixing this bug!
1333
1334 2011-10-07, Version 5.0.1
1335         * collectd: A mutex leak has been fixed in the meta data code. Thanks
1336           to Rafal Lesniak for his patch.
1337         * collectd: Compatibility fixes for GCC 4.6 have been applied. Thanks
1338           to Peter Green for his patch.
1339         * csv plugin: The line buffer size has been increased. Thanks to Colin
1340           McCabe for the patch.
1341         * curl_json plugin: Don't use the "parent" node to build the type
1342           instance, if it is empty. Compatibility with libyajl 2 has been
1343           added. Thanks to "spupykin" of the Arch Linux project for the initial
1344           code. Formatting of time has been fixed in the JSON module.
1345         * exec plugin: Fix the timestamp value passed to notification scripts.
1346           Thanks to Alexander Kovalenko for fixing this.
1347         * iptables plugin: Fix linking with some versions of libiptc.
1348         * irq plugin: Fix support for interrupts under Linux. The old code
1349           assumed that interrupts have a numeric value -- this is no longer
1350           true for Linux. Thanks to Bostjan Skufca for implementing this.
1351         * notify_desktop plugin: Compatibility with libnotify 0.7 has been
1352           added. Thanks to Samuli Suominen for his patch.
1353         * processes plugin: Fix handling of regular expressions containing
1354           spaces. Thanks for Sebastian Harl for fixing this.
1355         * rrdtool, rrdcached plugins: Improve precision of the XFF parameter.
1356           Previously, values like 0.999 would have been rounded to 1.0. Thanks
1357           to Francois-Xavier Bourlet for fixing this.
1358         * varnish plugin: Fix data type handling of some metrics. Some values
1359           were submitted as gauge even though they were derives.
1360         * Various plugin: Set a multi-threading flag in libcurl. Thanks to Mike
1361           Flisher for the fix.
1362
1363 2011-03-28, Version 5.0.0
1364         * collectd: The "FQDNLookup" option is now enabled by default.
1365         * collectd: The internal representation of time has been changed to
1366           allow a higher accuracy than one second.
1367         * collectdcmd: This new command line utility can send various commands
1368           to collectd using the UnixSock plugin. Thanks to Håkon Dugstad
1369           Johnsen and Sebastian Harl for their code.
1370         * collectd-nagios: The "-m" option has been implemented (treat NaNs as
1371           critical).
1372         * collectd-tg: Traffic generator creating bogus network traffic
1373           compatible to the Network plugin. This utility can be used to
1374           stress-test new write plugins and collectd in general.
1375         * libcollectdclient: Creating and sending network packets has been
1376           added to the collectd client library.
1377         * All data sets: The data source name of all data sets with exactly
1378           one data source has been changed to "value".
1379         * All plugins: All "counter" data sources have been converted to
1380           "derive" data sources. All plugins now use "derive" by default, but
1381           plugins such as the network plugin can still handle "counter", of
1382           course. The minimum value of all derive data sources is zero, the
1383           maximum value is unspecified.
1384         * amqp plugin: The new AMQP plugin can send data to and receive data
1385           from an AMQP broker. Thanks to Sebastien Pahl for his code.
1386         * apache plugin: Backwards compatibility code has been removed.
1387           Support for the IBM HTTP Server has been added. Thanks to Manuel
1388           Luis Sanmartín Rozada for his patch.
1389         * contextswitch plugin: Support for sysctlbyname(3) has been added.
1390           Thanks to Kimo Rosenbaum for his patch.
1391         * df plugin: The default behavior has been changed to be equivalent to
1392           the "ReportReserved" behavior of v4.
1393         * dns plugin: Improved RFC 1035 name parsing has been imported from
1394           "dnstop".
1395         * exec plugin: Backwards compatibility code has been removed.
1396         * GenericJMX plugin: The "InstancePrefix" option has been added to
1397           "Connection" blocks.
1398         * hddtemp plugin: The "TranslateDevicename" config option has been
1399           removed.
1400         * interface plugin: Use the "plugin instance" to store the interface
1401           value.
1402         * libvirt plugin: The "InterfaceFormat" option has been added. Thanks
1403           to Ruben Kerkhof for his patch.
1404         * lpar plugin: New plugins for "logical partitions", a virtualization
1405           technique of POWER CPUs. Thanks to Aurélien Reynaud for his code and
1406           patience.
1407         * modbus plugin: Support for libmodbus 2.9.2 has been added and the
1408           license has been changed to LGPLv2.1.
1409         * mysql plugin: Backwards compatibility code has been removed. The
1410           data sets used have been improved.
1411         * network plugin: The default buffer size has been increased to
1412           1452 bytes.
1413         * perl plugin: Backwards compatibility code has been removed.
1414         * postgresql plugin: Backwards compatibility code has been removed.
1415         * redis plugin: Plugin for collecting statistics from Redis, a key-
1416           value store, has been added. Thanks to Andres J. Diaz for his code.
1417         * swap plugin: Implement collection of physical and virtual memory
1418           statistics under Solaris. The new default is collecting physical
1419           memory. Thanks to Aurélien Reynaud for his patches.
1420         * threshold plugin: The threshold configuration has been moved into
1421           this separate plugin.
1422         * unixsock plugin: The "DeleteSocket" option has been added.
1423         * varnish plugin: The new Varnish plugin reads statistics from
1424           Varnish, a web accelerator. Thanks to Jérôme Renard and Marc
1425           Fournier for their contributions.
1426         * write_redis: New plugin for writing data to Redis, a key-value
1427           store.
1428         * zfs_arc plugin: The data sets have been replaced by more elegant
1429           alternatives.
1430         * v5upgrade target: Target for converting v4 data sets to the v5
1431           schema.
1432
1433 2013-04-07, Version 4.10.9
1434         * Build system: A bad interaction between the Java detection code and
1435           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
1436         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
1437           write_http plugins: Portability fixes, protection from infinite
1438           redirect loops, improved error handling and incorrect dereferences
1439           have been fixed. Most of these are related to the cURL library.
1440           Thanks to Dan Fandrich for his patches.
1441         * logfile plugin: Flush the output file handle. This works around
1442           caching when logging to STDOUT and redirecting into a file. Thanks
1443           to Nathan Huff for the patch.
1444         * network plugin: Build issues under FreeBSD and initialization have
1445           been fixed. Thanks to Ed Schouten for his patch.
1446         * mysql plugin: Fix a memory leak in the error handling. Thanks to
1447           Tomas Doran for his patch.
1448         * thermal plugin: The initialization of dispatched value lists has
1449           been fixed. Thanks to Markus Knetschke for his patch.
1450         * unixsock plugin: Parsing of options with an underscore, e.g.
1451           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
1452           patch.
1453
1454 2012-11-11, Version 4.10.8
1455         * collectd: Create new directories with mode 0777 and let umask remove
1456           unwanted permission bits.
1457         * collectd: Build issues have been fixed.
1458         * collectd: An incorrect assertion has been fixed in some common code
1459           for Solaris. This should resolve pseudo-random assertion failures
1460           under Solaris. Thanks to Jeff Blane for his help debugging this.
1461         * collectd: A couple of memory leaks through PThread thread attributes
1462           have been fixed. Thanks to Gerrie Roos for fixing these.
1463         * apcups plugin: Improve the reconnect behavior.
1464         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
1465           reported twice. Thanks to Brune Prémont for fixing this.
1466         * disk plugin: Fix incorrect computation of read and write latency (the
1467           "disk_time" type). Previously, the numbers reported where too small
1468           by a factor of "interval", e.g. when the interval is set to 10
1469           seconds, the values were too low by a factor of 10. Thanks to Manuel
1470           Sanmartin for reporting this problem.
1471         * dns plugin: A build issue under Solaris has been fixed. A erroneous
1472           define that could lead to the reporting of bad data has been fixed by
1473           Daniel Sutto.
1474         * memcachec plugin: A bug in the configuration handling has been fixed.
1475           Thanks to Pascal Hofmann for fixing this issue.
1476         * netapp plugin: Correctly close the connection on communication
1477           errors.
1478         * netlink plugin: The function used to query statistics has been
1479           changed to be more in line with iproute2's behavior. Thanks to
1480           "KIvosak" for the patch.
1481         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
1482           Chris Lundquist for his patch.
1483         * oracle plugin: Error messages have been improved.
1484         * ping plugin: Don't enter the exponential back-off mode when
1485           ping_send() fails. This should make recovery after a network failure
1486           much faster.
1487         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
1488           and Sven Trenkel for fixing this.
1489         * rrdtool plugin: Fix an out-of-bounds array access when printing a
1490           warning message. Thanks to Will Hawkins for fixing this bug.
1491         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
1492           added. Support for more complex / unusual MIBs / subtrees has been
1493           added. Thanks to Mark Juric to test the changes and point out these
1494           problems.
1495
1496 2012-04-01, Version 4.10.7
1497         * Build system: Fix the use of a libltdl macro. Thanks to Clemens Lang
1498           for fixing this. Adresses some issues with building the iptables
1499           plugin under Gentoo.
1500         * libcollectdclient: A memory leak in the lcc_getval() function has
1501           been fixed. Thanks to Jason Schmidlapp for finding and fixing this
1502           issue.
1503         * bind plugin: The use of 'QType" types has been fixed.
1504         * df plugin: Fixed compiler issue under Mac OS X 10.7.
1505         * conntrack plugin: Support zero as legitimate value. Thanks to Louis
1506           Opter for his patch.
1507         * memcached plugin: Increased the size of a static buffer, which was
1508           truncating status messages form memcached. Thanks to Timon for the
1509           patch.
1510         * network plugin: Forwarding of notifications has been disabled. This
1511           was a contition not checked for before, which may retult in an
1512           endless loop.
1513         * processes plugin: Support for process names with spaces has been
1514           added to the Linux implementation. Thanks to Darrell Bishop for his
1515           patch.
1516         * perl plugin: A race condition in several callbacks, including log and
1517           write callbacks, has been fixed. Thanks to "Rrpv" for reporting this
1518           bug.
1519         * snmp plugin: A bug when casting unsigned integers to gauge values has
1520           been fixed: Unsigned integers would be cast to a signed integer and
1521           then to a gauge, possibly resulting in a negative value.
1522         * tcpconns plugin: Compilation with newer versions of the FreeBSD
1523           runtime has been fixed.
1524
1525 2012-02-19, Version 4.10.6
1526         * Build system: Fix problems when building the ipvs and iptables
1527           plugins. Thanks to Sebastian Harl for his patch. A bashism in the
1528           version-gen.sh script has been fixed. Thanks to Jo-Philipp Wich for
1529           his patch.
1530         * csv and rrdtool plugins: Print a more helpful error message when the
1531           DataDir is a symlink pointing to a non-existing location. Thanks to
1532           Jonathan Nieder for his patch.
1533         * exec plugin: Fix a problem when using select(2) to read from file
1534           handles. Thanks to Gerrie Roos for his patch.
1535         * network plugin: An incorrect error message in the handling of the
1536           "Interface" configuration option has been fixed. Thanks to Gerrie
1537           Roos for his patch.
1538         * oracle plugin: A potential endless loop in the error handling has
1539           been fixed.
1540         * python plugin: A crash bug in the configuration handling has been
1541           fixed. Thanks to Sven Trenkel for his patch.
1542         * interfaces plugin: The change which was supposed to ignore "bogus"
1543           interfaces has been reverted, since it ignored legit interfaces, such
1544           as bonding pseudo-devices as well.
1545
1546 2012-01-21, Version 4.10.5
1547         * curl_xml plugin: Fix handling of file:// and other URLs (which don't
1548           follow HTTP status codes). Thanks to Fabien Wernli for his patch!
1549         * df plugin: Fix handling of negative "available" counts. This can
1550           occur with some file systems, for example UFS. Thanks to Toni Ylenius
1551           for his patch.
1552         * interface plugin: "mac" interfaces are now ignored on Solaris. These
1553           pseudo-interfaces occur multiple times, causing warnings. Also switch
1554           to 64-bit counters on Solaris, improving overflow behavior for
1555           high-speed interfaces. Thanks to Eddy Geez and Fabien Wernli for
1556           their patches.
1557         * memory plugin: Account kernel and unused memory under Solaris. Thanks
1558           to Fabien Wernli for his patch.
1559         * network plugin: A bug in the interaction between the Network plugin
1560           and filter chains has been fixed: When a filter modified a field such
1561           as the hostname, subsequent values in the same network packets could
1562           have ended up using the modified name rather than the original name.
1563           Thanks to Sebastian Harl for identifying the problem.
1564         * oracle plugin: A memory leak has been fixed in the parameter handling.
1565         * python plugin: A memory leak has been fixed. Thanks to Sven Trenkel
1566           for fixing this bug!
1567
1568 2011-10-14, Version 4.10.4
1569         * collectd: A mutex leak has been fixed in the meta data code. Thanks
1570           to Rafal Lesniak for his patch.
1571         * collectd: Compatibility fixes for GCC 4.6 have been applied. Thanks
1572           to Peter Green for his patch.
1573         * csv plugin: The line buffer size has been increased. Thanks to Colin
1574           McCabe for the patch.
1575         * curl_json plugin: Don't use the "parent" node to build the type
1576           instance, if it is empty. Compatibility with libyajl 2 has been
1577           added. Thanks to "spupykin" of the Arch Linux project for the initial
1578           code.
1579         * iptables plugin: Fix linking with some versions of libiptc.
1580         * irq plugin: Fix support for interrupts under Linux. The old code
1581           assumed that interrupts have a numeric value -- this is no longer
1582           true for Linux. Thanks to Bostjan Skufca for implementing this.
1583         * notify_desktop plugin: Compatibility with libnotify 0.7 has been
1584           added. Thanks to Samuli Suominen for his patch.
1585         * processes plugin: Fix handling of regular expressions containing
1586           spaces. Thanks for Sebastian Harl for fixing this.
1587         * rrdtool, rrdcached plugins: Improve precision of the XFF parameter.
1588           Previously, values like 0.999 would have been rounded to 1.0. Thanks
1589           to Francois-Xavier Bourlet for fixing this.
1590         * Various plugin: Set a multi-threading flag in libcurl. Thanks to Mike
1591           Flisher for the fix.
1592
1593 2011-03-26, Version 4.10.3
1594         * Documentation: Several updates and additions. Thanks to Sebastian Harl.
1595         * collectd: Build issues (compiler warnings) have been fixed. Thanks to
1596           Bruno Prémont.
1597         * collectd: Threshold subsection: Handling of NAN values in the
1598           percentage calculation has been fixed.
1599         * collectd, java plugin, ntpd plugin: Several diagnostic messages have
1600           been improved.
1601         * curl_json plugin: Handling of arrays has been fixed.
1602         * libvirt plugin: A bug in reading the virtual CPU statistics has been
1603           fixed. Thanks to “JLPC” for reporting this problem.
1604         * modbus plugin: Compatibility with libmodbus 2.0.3 has been restored.
1605         * processes plugin: Potentially erroneous behavior has been fixed in an
1606           error handling case.
1607         * python plugin: Fix dispatching of values from Python scripts to
1608           collectd. Thanks to Gregory Szorc for finding and fixing this
1609           problem.
1610
1611 2010-11-27, Version 4.10.2
1612         * Documentation: Various documentation fixes.
1613         * collectd: If including one configuration file fails, continue with
1614           the rest of the configuration if possible.
1615         * collectd: Fix a bug in the read function scheduling. In rare cases
1616           read functions may not have been called as often as requested.
1617         * collectd: Concurrency issues with errno(3) under AIX have been
1618           fixed: A thread-safe version of errno has to be requested under AIX.
1619           Thanks to Aurélien Reynaud for his patch.
1620         * collectd: A left-over hard-coded 2 has been replaced by the
1621           configurable timeout value.
1622         * curl, memcachec, tail plugins: Fix handling of "DERIVE" data
1623           sources. Matching the end of a string has been improved; thanks to
1624           Sebastian Harl for the patch.
1625         * curl_json plugin: Fix a problem when parsing 64bit integers. Reading
1626           JSON data from non-HTTP sources has been fixed.
1627         * netapp plugin: Pass the interval setting to the dispatch function.
1628           Restore compatibility to NetApp Release 7.3. Thanks to Sven Trenkel
1629           for the patch.
1630         * network plugin: Be less verbose about unchecked signatures, in order
1631           to prevent spamming the logs.
1632         * notify_email plugin: Concurrency problems have been fixed.
1633         * python plugin: Set "sys.argv", since many scripts don't expect that
1634           it may not be set. Thanks to Sven Trenkel for the patch.
1635         * rrdtool, rrdcached plugin: Fix a too strict assertion when creating
1636           RRD files.
1637         * swap plugin: A bug which lead to incorrect I/O values has been
1638           fixed.
1639         * value match: A minor memory leak has been fixed. Thanks to Sven
1640           Trenkel for the patch.
1641
1642 2010-07-09, Version 4.10.1
1643         * Build system: Checking for "strtok_r" under Solaris has been fixed.
1644         * Portability: Fixes for Solaris 8 have been applied. Thanks to
1645           Alexander Wuerstlein for his patch.
1646         * collectd: The shutdown speed when terminating the read threads has
1647           been improved.
1648         * libcollectdclient: A format error in the PUTVAL command has been
1649           removed. Thanks to Johan Van den Brande for fixing this.
1650         * df plugin: An error message shown when "cu_mount_getlist" fails has
1651           been added.
1652         * processes plugin: Missing initialization code for IO members of a
1653           struct has been added. Thanks to Aurélien Reynaud for fixing this.
1654         * python plugin: Memory leaks in the write and notification callbacks
1655           have been fixed. A possible crash when the plugin was loaded but not
1656           configured has been fixed. Thanks to Sven Trenkel for his patches.
1657         * snmp plugin: Verbosity with regard to unknown ASN types has been
1658           increased. A build problem on PowerPC and ARM processors has been
1659           fixed by Aurélien Reynaud; thanks!
1660         * powerdns plugin: Compatibility changes for PowerDNS 2.9.22 and above
1661           have been applied. Thanks to Luke Heberling for his changes.
1662
1663 2010-05-01, Version 4.10.0
1664         * collectd: JSON output now includes the "dstypes" and "dsnames"
1665           fields. This makes it easier for external applications to interpret
1666           the data. Thanks to Chris Buben for his work.
1667         * collectd: The new "Timeout" option can be used to specify a
1668           "timeout" for missing values. This is used in the threshold checking
1669           code to detect missing values. Thanks to Andrés J. Díaz for the
1670           patch.
1671         * apache plugin: Support for "IdleWorkers" (Apache 1.*: "IdleServers")
1672           has been added.
1673         * curl plugin: The new "ExcludeRegex" allows to easily exclude certain
1674           lines from the match.
1675         * curl_xml plugin: This new plugin allows to read XML files using cURL
1676           and extract metrics included in the files. Thanks to Amit Gupta for
1677           his work.
1678         * filecount plugin: The new "IncludeHidden" option allows to include
1679           "hidden" files and directories in the statistics. Thanks to Vaclav
1680           Malek for the patch.
1681         * logfile plugin: The new "PrintSeverity" option allows to include the
1682           severity of a message in the output. Thanks to Clément Stenac for
1683           his patch.
1684         * memcachec plugin: The new "ExcludeRegex" allows to easily exclude
1685           certain lines from the match.
1686         * modbus plugin: This new plugin allows to read registers from
1687           Modbus-TCP enabled devices.
1688         * network plugin: The new "Interface" option allows to set the
1689           interface to be used for multicast and, if supported, unicast
1690           traffic. Thanks to Max Henkel for his work.
1691         * openvpn plugin: The "CollectUserCount" and "CollectIndividualUsers"
1692           options allow more detailed control over how to report sessions of
1693           multiple users. Thanks to Fabian Schuh for his work.
1694         * pinba plugin: This new plugin receives timing information from the
1695           Pinba PHP extension, which can be used for profiling PHP code and
1696           webserver performance. Thanks to Phoenix Kayo for his work.
1697         * ping plugin: The new "MaxMissed" allows to re-resolve a hosts
1698           address when it doesn't reply to a number of ping requests. Thanks
1699           to Stefan Völkel for the patch.
1700         * postgresql plugin: The "Interval" config option has been added. The
1701           plugin has been relicensed under the 2-clause BSD license. Thanks to
1702           Sebastian Harl for his work.
1703         * processes plugin: Support for "code" and "data" virtual memory sizes
1704           has been added. Thanks to Clément Stenac for his patch.
1705         * python plugin: Support for Python 3 has been implemented. Thanks to
1706           Sven Trenkel for his work.
1707         * routeros plugin: Support for collecting CPU load, memory usage, used
1708           and free disk space, sectors written and number of bad blocks from
1709           MikroTik devices has been added.
1710         * swap plugin: Support for Linux < 2.6 has been added. Thanks to Lorin
1711           Scraba for his patch.
1712         * tail plugin: The new "ExcludeRegex" allows to easily exclude certain
1713           lines from the match. Thanks to Peter Warasin for his patch.
1714         * write_http plugin: The "StoreRates" option has been added. Thanks to
1715           Paul Sadauskas for his patch.
1716         * regex match: The "Invert" option has been added. Thanks to Julien
1717           Ammous for his patch.
1718
1719 2011-03-26, Version 4.9.5
1720         * Documentation: Several updates and additions. Thanks to Sebastian Harl.
1721         * collectd: Build issues (compiler warnings) have been fixed. Thanks to
1722           Bruno Prémont.
1723         * collectd: Threshold subsection: Handling of NAN values in the
1724           percentage calculation has been fixed.
1725         * collectd, java plugin, ntpd plugin: Several diagnostic messages have
1726           been improved.
1727         * libvirt plugin: A bug in reading the virtual CPU statistics has been
1728           fixed. Thanks to “JLPC” for reporting this problem.
1729         * processes plugin: Potentially erroneous behavior has been fixed in an
1730           error handling case.
1731         * python plugin: Fix dispatching of values from Python scripts to
1732           collectd. Thanks to Gregory Szorc for finding and fixing this
1733           problem.
1734
1735 2010-11-27, Version 4.9.4
1736         * Documentation: Various documentation fixes.
1737         * collectd: If including one configuration file fails, continue with
1738           the rest of the configuration if possible.
1739         * collectd: Fix a bug in the read function scheduling. In rare cases
1740           read functions may not have been called as often as requested.
1741         * collectd: Concurrency issues with errno(3) under AIX have been
1742           fixed: A thread-safe version of errno has to be requested under AIX.
1743           Thanks to Aurélien Reynaud for his patch.
1744         * curl, memcachec, tail plugins: Fix handling of "DERIVE" data
1745           sources. Matching the end of a string has been improved; thanks to
1746           Sebastian Harl for the patch.
1747         * curl_json plugin: Fix a problem when parsing 64bit integers. Reading
1748           JSON data from non-HTTP sources has been fixed.
1749         * netapp plugin: Pass the interval setting to the dispatch function.
1750           Restore compatibility to NetApp Release 7.3. Thanks to Sven Trenkel
1751           for the patch.
1752         * network plugin: Be less verbose about unchecked signatures, in order
1753           to prevent spamming the logs.
1754         * notify_email plugin: Concurrency problems have been fixed.
1755         * python plugin: Set "sys.argv", since many scripts don't expect that
1756           it may not be set. Thanks to Sven Trenkel for the patch.
1757         * rrdtool, rrdcached plugin: Fix a too strict assertion when creating
1758           RRD files.
1759         * value match: A minor memory leak has been fixed. Thanks to Sven
1760           Trenkel for the patch.
1761
1762 2010-07-09, Version 4.9.3
1763         * Build system: Checking for "strtok_r" under Solaris has been fixed.
1764         * Portability: Fixes for Solaris 8 have been applied. Thanks to
1765           Aurélien Reynaud and Alexander Wuerstlein for their patches.
1766         * collectd: The shutdown speed when terminating the read threads has
1767           been improved.
1768         * collectd-nagios: The format of the performance data has been fixed.
1769         * libcollectdclient: A format error in the PUTVAL command has been
1770           removed. Thanks to Johan Van den Brande for fixing this.
1771         * df plugin: An error message shown when "cu_mount_getlist" fails has
1772           been added.
1773         * processes plugin: Missing initialization code for IO members of a
1774           struct has been added. Thanks to Aurélien Reynaud for fixing this.
1775         * python plugin: Memory leaks in the write and notification callbacks
1776           have been fixed. A possible crash when the plugin was loaded but not
1777           configured has been fixed. Thanks to Sven Trenkel for his patches.
1778         * rrdcached plugin: A build issue has been resolved. Thanks to
1779           Thorsten von Eicken for the patch.
1780         * snmp plugin: Verbosity with regard to unknown ASN types has been
1781           increased. A build problem on PowerPC and ARM processors has been
1782           fixed by Aurélien Reynaud; thanks!
1783         * powerdns plugin: Compatibility changes for PowerDNS 2.9.22 and above
1784           have been applied. Thanks to Luke Heberling for his changes.
1785
1786 2010-04-22, Version 4.9.2
1787         * Build system, various plugins: Fixes for AIX compatibility have been
1788           added. Thanks to Manuel Sanmartin for his patches.
1789         * Build system: Checking for "nanosleep" on old Solaris machines has
1790           been fixed. Thanks to Vincent McIntyre and Sebastian Harl for
1791           figuring out a way to make this work.
1792         * collectd: Append a newline to messages written to STDERR.
1793         * collectd: Serialization of NANs in JSON format has been fixed.
1794           Thanks to Chris Buben for pointing out the resulting syntax error.
1795         * collectd: Checks whether a "sleep" returned early have been added;
1796           the cases are now handled correctly. Thanks to Michael Stapelberg
1797           for the patch.
1798         * collectd: Continue reading files in a directory when parsing one
1799           file fails.
1800         * apache plugin: Collection of the number of active connections has
1801           been fixed for Apache 2.*.
1802         * contextswitch plugin: Handle large counter/derive values correctly.
1803           Thanks to Martin Merkel for reporting the bug.
1804         * exec plugin: Error messages have been improved. The "running" flag
1805           is now cleared correctly when forking a child fails.
1806         * iptables plugin: Fix a violation of aliasing rules. This resolves a
1807           warning / error with new GCC versions. Thanks to Jan Engelhardt for
1808           the work-around.
1809         * java plugin: The Java API files are now packaged into a .jar file.
1810           Thanks to Amit Gupta for his patch.
1811         * network plugin: Fix a segmentation fault when receiving packets with
1812           an unknown data source type.
1813         * network plugin: A memory leak when receiving encrypted network
1814           packets has been fixed.
1815         * openvpn plugin: Fix naming schema when reading "MULTI1" type status
1816           files.
1817         * oracle plugin: Fix checking for lost connections and reconnect in
1818           this case. Thanks to Sven Trenkel for pointing out the problem.
1819         * unixsock plugin: A memory leak in the "LISTVAL" command has been
1820           fixed. Thanks to Peter Warasin for pointing it out.
1821         * write_http plugin: Use the "any" authentication schema. This used to
1822           be "digest". Thanks to Paul Sadauskas for the patch.
1823
1824 2010-01-14, Version 4.9.1
1825         * Documentation: Some manpage fixes.
1826         * Default config: Added sample configuration for missing plugins.
1827         * apache plugin: Fix a segmentation fault in the config handling of
1828           VerifyPeer / VerifyHost. Thanks to "plazmus" for his or her patch.
1829         * processes plugin: Fix handling of derive data sources.
1830         * rrdtool plugin: Fix a bug with random write timeouts. Due to an
1831           incorrect initialization some files may be suspended basically
1832           indefinitely. After flushing the files they were written regularly
1833           again.
1834         * routeros plugin: Use the node name for the "host" field.
1835         * Monitorus.pm: Put the plugin into the "Collectd::Plugins" namespace.
1836         * Perl bindings: Fix a warning that was printed when building
1837           debugging output.
1838
1839 2009-12-21, Version 4.9.0
1840         * contextswitch plugin: The new ContextSwitch plugin gathers the
1841           number of context switches done by the CPU. Thanks to Patrik
1842           Weiskircher for the patch.
1843         * cpu plugin: Support for SMP (multiple processors) under FreeBSD has
1844           been added. Thanks to Doug MacEachern for the patch.
1845         * curl plugin: The “MeasureResponseTime” option has been added. Thanks
1846           to Aman Gupta for the patch.
1847         * df plugin: Collecting the inode count and reserved space has been
1848           added. Thanks to Patrik Weiskircher for the patch.
1849         * exec plugin: The environment variables “COLLECTD_INTERVAL” and
1850           “COLLECTD_HOSTNAME” are now set before executing the application.
1851         * Monitorus plugin: This Perl-based plugin to query statistics from
1852           mon.itor.us has been added. Thanks to Jeff Green for the patch.
1853         * netapp plugin: New plugin to collect statistics from NetApp filers.
1854           Thanks to Sven Trenkel of the noris network AG for the patch.
1855         * network plugin: Statistics collection about the plugin itself has
1856           been implemented.
1857         * openvpn plugin: Add support for more versions of the “status file”.
1858           Thanks to Marco Chiappero for the patch.
1859         * OpenVZ plugin: This Perl-based plugin to gather OpenVZ statistics
1860           has been added. Thanks to Jonathan Kolb for the patch.
1861         * ping plugin: The config options "SourceAddress" and "Device"
1862           have been added. Thanks to Sebastian Harl for the patch.
1863         * processes plugin: Collection of IO-metrics has been added. Thanks to
1864           Andrés J. Díaz for the patch.
1865         * python plugin: The new Python plugin integrates a Python interpreter
1866           into collectd and allows to execute plugins written in the scripting
1867           language. Thanks to Sven Trenkel for his work.
1868         * routeros plugin: The new RouterOS plugin queries interface and
1869           wireless registration statistics from RouterOS.
1870         * Various plugins: AIX support has been added to the cpu, disk,
1871           interface, load, memory, processes, and swap plugins. Thanks to
1872           Manuel Sanmartin for his patches.
1873         * hashed match: This match for simple load balancing and redundant
1874           storage has been added.
1875         * scale target: This target to scale (multiply) values by an arbitrary
1876           value has been added.
1877
1878 2010-04-22, Version 4.8.5
1879         * collectd: Append a newline to messages written to STDERR.
1880         * network plugin: Fix a segmentation fault when receiving packets with
1881           an unknown data source type.
1882
1883 2010-04-07, Version 4.8.4
1884         * Build system, various plugins: Fixes for AIX compatibility have been
1885           added. Thanks to Manuel Sanmartin for his patches.
1886         * Build system: Checking for "nanosleep" on old Solaris machines has
1887           been fixed. Thanks to Vincent McIntyre and Sebastian Harl for
1888           figuring out a way to make this work.
1889         * collectd: Serialization of NANs in JSON format has been fixed.
1890           Thanks to Chris Buben for pointing out the resulting syntax error.
1891         * collectd: Checks whether a "sleep" returned early have been added;
1892           the cases are now handled correctly. Thanks to Michael Stapelberg
1893           for the patch.
1894         * collectd: Continue reading files in a directory when parsing one
1895           file fails.
1896         * apache plugin: Collection of the number of active connections has
1897           been fixed for Apache 2.*.
1898         * exec plugin: Error messages have been improved. The "running" flag
1899           is now cleared correctly when forking a child fails.
1900         * iptables plugin: Fix a violation of aliasing rules. This resolves a
1901           warning / error with new GCC versions. Thanks to Jan Engelhardt for
1902           the work-around.
1903         * java plugin: The Java API files are now packaged into a .jar file.
1904           Thanks to Amit Gupta for his patch.
1905         * network plugin: A memory leak when receiving encrypted network
1906           packets has been fixed.
1907         * oracle plugin: Fix checking for lost connections and reconnect in
1908           this case. Thanks to Sven Trenkel for pointing out the problem.
1909         * unixsock plugin: A memory leak in the "LISTVAL" command has been
1910           fixed. Thanks to Peter Warasin for pointing it out.
1911         * write_http plugin: Use the "any" authentication schema. This used to
1912           be "digest". Thanks to Paul Sadauskas for the patch.
1913
1914 2010-01-14, Version 4.8.3
1915         * Documentation: Some manpage fixes.
1916         * rrdtool plugin: Fix a bug with random write timeouts. Due to an
1917           incorrect initialization some files may be suspended basically
1918           indefinitely. After flushing the files they were written regularly
1919           again.
1920
1921 2009-12-18, Version 4.8.2
1922         * Build system, java plugin: Don't use “find -L” to search for Java
1923           headers, because it's a GNU extension.
1924         * Build system: Support for parallel builds has been improved. Thanks
1925           Sebastian Harl and Stefan Völkel for looking into this.
1926         * collectd: Print error messages to STDERR if no log plugin has been
1927           loaded.
1928         * genericjmx plugin: Close and re-open the connection upon I/O-errors.
1929         * gmond plugin: Fix typos which caused syntax errors.
1930         * memory plugin: Handling of >4 Gbyte of memory has been fixed.
1931         * network plugin: The license has been changed to LGPL 2.1.
1932         * oracle plugin: Reconnect to the database if the connection dies.
1933         * rrdcached plugin: Work-around for a bug in RRDtool 1.4rc2 has been
1934           added.
1935         * snmp plugin: Handling of negative values has been fixed. Strings
1936           containing control characters are now interpreted as hex-strings.
1937         * unixsock plugin: A memory leak in the LISTVAL command has been
1938           fixed. Thanks to Ben Knight for his patch.
1939
1940 2009-10-04, Version 4.8.1
1941         * Build system: Issues when building the iptables plugin have been
1942           fixed.
1943         * exec plugin: Clear the signal block mask before calling exec(2).
1944         * perl plugin: Declare the “environ” variable. This solves build
1945           issues on some platforms.
1946         * processes plugin: Remove unnecessary call of realloc(3). Thanks to
1947           Andrés J. Díaz for the patch.
1948         * unixsock plugin: Fix a (well hidden) race condition related to file
1949           descriptor handling.
1950
1951 2009-09-13, Version 4.8.0
1952         * collectd: Two new data source types, “DERIVE” and “ABSOLUTE”, have
1953           been added. “DERIVE” can be used for counters that are reset
1954           occasionally. Thanks to Mariusz Gronczewski for implementing this.
1955         * thresholds: The advanced threshold options “Percentage”, “Hits”, and
1956           “Hysteresis” have been added. Thanks to Andrés J. Díaz for his
1957           patches.
1958         * curl_json plugin: The new cURL-JSON plugin reads JSON files using
1959           the cURL library and parses the contents according to user
1960           specification. Among other things, this allows to read statistics
1961           from a CouchDB instance. Thanks to Doug MacEachern for the patch.
1962         * df plugin: Using the new “ReportByDevice” option the device rather
1963           than the mount point can be used to identify partitions. Thanks to
1964           Paul Sadauskas for the patch.
1965         * dns plugin: The possibility to ignore numeric QTypes has been added.
1966           Thanks to Mirko Buffoni for the patch.
1967         * GenericJMX plugin: The new, Java-based GenericJMX plugin allows to
1968           query arbitrary data from a Java process using the “Java Management
1969           Extensions” (JMX).
1970         * madwifi plugin: The new MadWifi plugin collects information about
1971           Atheros wireless LAN chipsets from the MadWifi driver. Thanks to
1972           Ondrej Zajicek for his patches.
1973         * network plugin: The receive- and send-buffer-sizes have been made
1974           configurable, allowing for bigger and smaller packets. Thanks to
1975           Aman Gupta for the patch.
1976         * olsrd plugin: The new OLSRd plugin queries routing information from
1977           the “Optimized Link State Routing” daemon.
1978         * rrdtool plugin: A new configuration option allows to define a random
1979           write delay when writing RRD files. This spreads the load created by
1980           writing RRD files more evenly. Thanks to Mariusz Gronczewski for the
1981           patch.
1982         * swap plugin: The possibility to collect swapped in/out pages has
1983           been added to the Swap plugin. Thanks to Stefan Völkel for the
1984           patch.
1985         * tokyotyrant plugin: The new TokyoTyrant plugin reads the number of
1986           records and file size from a running Tokyo Tyrant server. Thanks to
1987           Paul Sadauskas for the patch.
1988         * unixsock plugin: Add the “GETTHRESHOLD” command. This command can be
1989           used to query the thresholds configured for a particular identifier.
1990         * write_http plugin: The new Write HTTP plugin sends the values
1991           collected by collectd to a web-server using HTTP POST requests.
1992           Thanks to Paul Sadauskas for the patch.
1993         * zfs_arc plugin: The new ZFS ARC plugin collects information about
1994           the “Adaptive Replacement Cache” (ARC) of the “Zeta File-System”
1995           (ZFS). Thanks to Anthony Dewhurst for the patch.
1996         * empty_counter match: The new Empty Counter match matches value
1997           lists, where at least one data source is of type COUNTER and the
1998           counter value of all counter data sources is zero.
1999
2000 2009-12-18, Version 4.7.5
2001         * Build system, java plugin: Don't use “find -L” to search for Java
2002           headers, because it's a GNU extension.
2003         * Build system: Support for parallel builds has been improved. Thanks
2004           Sebastian Harl and Stefan Völkel for looking into this.
2005         * collectd: Print error messages to STDERR if no log plugin has been
2006           loaded.
2007         * memory plugin: Handling of >4 Gbyte of memory has been fixed.
2008         * network plugin: The license has been changed to LGPL 2.1.
2009         * oracle plugin: Reconnect to the database if the connection dies.
2010         * rrdcached plugin: Work-around for a bug in RRDtool 1.4rc2 has been
2011           added.
2012         * snmp plugin: Handling of negative values has been fixed. Strings
2013           containing control characters are now interpreted as hex-strings.
2014         * unixsock plugin: A memory leak in the LISTVAL command has been
2015           fixed. Thanks to Ben Knight for his patch.
2016
2017 2009-10-03, Version 4.7.4
2018         * Build system: Issues when building the iptables plugin have been
2019           fixed.
2020         * exec plugin: Clear the signal block mask before calling exec(2).
2021         * perl plugin: Declare the “environ” variable. This solves build
2022           issues on some platforms.
2023         * processes plugin: Remove unnecessary call of realloc(3). Thanks to
2024           Andrés J. Díaz for the patch.
2025         * unixsock plugin: Fix a (well hidden) race condition related to file
2026           descriptor handling.
2027
2028 2009-09-13, Version 4.7.3
2029         * collectd: Fix a possible but very rare invalid “free” in the caching
2030           code. Thanks to Sebastian Harl for the patch.
2031         * collectd: Remove old values when a cache entry is marked as missing.
2032           This way the “GETVAL” command of the UnixSock plugin doesn't return
2033           old, no longer valid values when this happens. Thanks to Andrés J.
2034           Díaz for the patch.
2035         * collectd: The “plugin_unregister_read” function has been fixed.
2036         * apache, ascent, bind, curl, nginx plugins: Advise the cURL library
2037           to follow redirects. Thanks to Joey Hess for reporting this bug.
2038         * df plugin: Check the ignorelist before stating the file system,
2039           possibly reducing the number of stats considerably. Thanks to Joey
2040           Hess for reporting this bug.
2041         * iptables plugin: Support for the new libiptc API has been added.
2042           Thanks to Sebastian Harl for the patch. The build system has been
2043           updated to the plugin only includes the shipped header files when it
2044           is linked with the shipped library, too.
2045         * java plugin: Delay creating the JVM until after the daemon has
2046           forked. The JVM internally creates threads that are lost when
2047           forking. This means that Java-based plugins are now configured
2048           during the init-phase, i. e. later than other plugins.
2049         * libvirt plugin: Re-connect to libvirtd if connecting fails. Thanks
2050           to Alan Pevec for the patch.
2051         * network plugin: Fix the handling of the “CacheFlush” option: The
2052           value was assigned to a wrong variable. The initialization of the
2053           gcrypt library, which is used for signing / encrypting traffic, has
2054           been fixed. Thanks to Luke Heberling for the patch.
2055         * powerdns plugin: Set a timeout when reading data from the datagram
2056           socket. Handling of the “LocalSocket” option has been fixed.  An
2057           incorrectly used “type” has been corrected. Thanks to Luke Heberling
2058           for his patches.
2059
2060 2009-07-19, Version 4.7.2
2061         * Build system: Support for `DESTDIR' has been fixed in the Java
2062           bindings.
2063         * collectd: Okay-notifications have been fixed. Thanks to Andrés J.
2064           Díaz for fixing this bug.
2065         * collectd: A programming error has been fixed in the notification
2066           code. The bug may result in an assertion failure.
2067         * memcached plugin: Portability fix for Solaris. Thanks to Amit Gupta
2068           for reporting the bug.
2069         * ping plugin: Link the plugin with libm.
2070
2071 2009-06-02, Version 4.7.1
2072         * Build system: Detection of Java has been improved and missing
2073           details have been added to the configuration summary. Support for
2074           libtool 2.2 has been added.
2075         * collectd: Two bugs with the threshold checking have been fixed. The
2076           first one prevented thresholds to be checked at all, the second one
2077           caused wrong behavior with the persistency option. Thanks to Andrés
2078           J. Díaz for fixing these problems.
2079         * collectd: Handling of the `Include' configuration option has been
2080           fixed.
2081         * rrdtool plugin: Make sure initialization is run only once. This
2082           resolves problems under Solaris and potentially other systems.
2083           Thanks to Amit Gupta for reporting this bug.
2084         * java plugin: Make it possible to use dots ('.') instead of slashes
2085           ('/') as the class separator. Thanks to Randy Rizun for pointing
2086           this out.
2087         * swap plugin: A work-around for 32-bit Solaris has been added. Thanks
2088           to Doug MacEachern for the patch.
2089
2090 2009-05-11, Version 4.7.0
2091         * apache plugin: Support to query multiple servers has been added.
2092           Thanks to Amit Gupta for the patch.
2093         * apache plugin: Handling of lighttpd's scoreboard statistics has been
2094           improved. Thanks to Amit Gupta for the patch.
2095         * conntrack plugin: The new conntrack plugin collects the connection
2096           tracking table size. Thanks to Tomasz Pala for the patch.
2097         * fscache plugin: The new fscache plugin collects statistics about
2098           Linux' file-system based caching framework. Thanks to Edward
2099           Konetzko for the patch.
2100         * gmond plugin: The new gmond plugin can receive and interpret
2101           multicast traffic from Ganglia's gmond daemon.
2102         * java plugin: The new java plugin exports the collectd API to Java,
2103           making it possible to write extensions to collectd in Java.
2104         * memcachec plugin: The new memcachec plugin queries data from a
2105           memcached daemon and parses it similar to the cURL plugin. Thanks to
2106           Doug MacEachern for the initial code.
2107         * memcached plugin: Support for connections over UNIX domain sockets
2108           has been added. Thanks to Franck Lombardi for the patch.
2109         * memory plugin: Support for OpenBSD and possibly other *BSDs has been
2110           added. Thanks to Simon Kuhnle for the patch.
2111         * mysql plugin: Support to query multiple databases has been added.
2112           Thanks to Doug MacEachern for the patch.
2113         * mysql plugin: Master/slave statistics have been added.
2114         * mysql plugin: Lock statistics have been added. Thanks to Rodolphe
2115           Quiédeville for the patch.
2116         * network plugin: The possibility to sign or encrypt network traffic
2117           has been added.
2118         * protocols plugin: The new protocols plugin provides information
2119           about network protocols, such as IP, TCP and UDP.
2120         * snmp plugin: The intervals given in the configuration of the SNMP
2121           plugin must no longer be a multiple of the global interval.
2122         * table plugin: The new Table plugin provides parsing for table-like
2123           structured files, such as many files beneath /proc.
2124         * ted plugin: The new TED plugin reads power consumption measurements
2125           from “The Energy Detective” (TED). Thanks to Eric Reed for this
2126           plugin.
2127         * onewire plugin: The new `Interval' option allows collecting
2128           information from OneWire sensors at arbitrary intervals.
2129         * ping plugin: Support for collecting the drop rate and standard
2130           deviation of round-trip times has been added.
2131         * uptime plugin: The new uptime plugin can collect the server's
2132           uptime. Thanks to Marco Chiappero for the patch.
2133
2134 2009-09-10, Version 4.6.5
2135         * collectd: Remove old values when a cache entry is marked as missing.
2136           This way the “GETVAL” command of the UnixSock plugin doesn't return
2137           old, no longer valid values when this happens. Thanks to Andrés J.
2138           Díaz for the patch.
2139         * apache, ascent, bind, curl, nginx plugins: Advise the cURL library
2140           to follow redirects. Thanks to Joey Hess for reporting this bug.
2141         * df plugin: Check the ignorelist before stating the file system,
2142           possibly reducing the number of stats considerably. Thanks to Joey
2143           Hess for reporting this bug.
2144         * iptables plugin: Support for the new libiptc API has been added.
2145           Thanks to Sebastian Harl for the patch. The build system has been
2146           updated to the plugin only includes the shipped header files when it
2147           is linked with the shipped library, too.
2148         * libvirt plugin: Re-connect to libvirtd if connecting fails. Thanks
2149           to Alan Pevec for the patch.
2150         * powerdns plugin: Set a timeout when reading data from the datagram
2151           socket. Handling of the “LocalSocket” option has been fixed.  An
2152           incorrectly used “type” has been corrected. Thanks to Luke Heberling
2153           for his patches.
2154
2155 2009-07-18, Version 4.6.4
2156         * collectd: Okay-notifications have been fixed. Thanks to Andrés J.
2157           Díaz for fixing this bug.
2158         * collectd: A programming error has been fixed in the notification
2159           code. The bug may result in an assertion failure.
2160         * memcached plugin: Portability fix for Solaris. Thanks to Amit Gupta
2161           for reporting the bug.
2162
2163 2009-06-02, Version 4.6.3
2164         * Build system, various plugins: Many build fixes for FreeBSD,
2165           OpenBSD, NetBSD, Solaris and Mac OS X. Big thanks to Doug MacEachern
2166           for many fixes and providing a build system for many platforms,
2167           Ulf Zimmermann for providing a FreeBSD system and Simon Kuhnle for
2168           providing an OpenBSD system.
2169         * collectd: Two bugs with the threshold checking have been fixed. The
2170           first one prevented thresholds to be checked at all, the second one
2171           caused wrong behavior with the persistency option. Thanks to Andrés
2172           J. Díaz for fixing these problems.
2173         * collectd: Handling of the `Include' configuration option has been
2174           fixed.
2175         * battery plugin: Don't complain about a missing directory every
2176           interval.
2177         * exec plugin: Allow executed programs to close STDERR. Thanks to
2178           Thorsten von Eicken for reporting this problem.
2179         * irq plugin: Fix handling of overflowing 32-bit counters. Thanks to
2180           Tomasz Pala for the patch.
2181         * perl plugin: Portability build-fixes. Thanks to Doug MacEachern for
2182           the patch.
2183         * memory plugin: Fix a potential problem under Solaris.
2184         * swap plugin: A work-around for 32-bit Solaris has been added. Thanks
2185           to Doug MacEachern for the patch.
2186
2187 2009-03-18, Version 4.6.2
2188         * collectd: Some Solaris utility code has been improved.
2189         * filter subsystem: Allow `Chains' without default targets.
2190         * liboping: A patch to comply with strict aliasing rules has been
2191           added.
2192         * timediff match: Fix a typo: The match was registered with a wrong
2193           name which prevented this match to be used as documented. Thanks to
2194           Bruno Prémont for finding this problem.
2195         * bind plugin: Fix collection of the cached RR sets. The number of RR
2196           sets currently in the cache was collected as a counter value, which
2197           is nonsense. Thanks to Bruno Prémont for implementing this.
2198         * dns plugin: Don't pass NULL to `pcap_open_live': Some systems,
2199           primarily BSDs, don't take it well and crash.
2200         * oracle plugin: Portability to 64 bit systems has been improved.
2201         * postgresql plugin: The default configuration has been improved.
2202         * rrdtool plugin: Fix a possible race condition: If the network plugin
2203           is brought and dispatches a value before the rrdtool plugin is
2204           initialized, the daemon may crash.
2205
2206 2009-02-22, Version 4.6.1
2207         * collectd: Many documentation fixes.
2208         * Collectd::Unixsock: Error handling has been improved.
2209         * regex match: Don't link with the PCRE library.
2210         * bind plugin: Various bugs have been fixed. Thanks to Bruno Prémont
2211           for finding and fixing most of them.
2212         * ipmi plugin: Fix an off-by-one error which could cause segmentation
2213           faults. Thanks to Peter Holik for his patch.
2214
2215 2009-02-16, Version 4.6.0
2216         * collectd: Added the `filter chain' infrastructure, which allows the
2217           user to use `matches' and `targets' to control value processing.
2218         * collectd: The new `-T' command line argument allows more in-depth
2219           testing of a configuration. Thanks to Doug MacEachern for the patch.
2220         * collectd-nagios: The Nagios integration command has been updated to
2221           use libcollectdclient. The `percentage' aggregation function has
2222           been added. Thanks to Fabian Linzberger for the patch.
2223         * libcollectdclient: A library which abstracts communication with the
2224           unixsock plugin for clients has been added.
2225         * regex match: Match values by their identifies using regular
2226           expressions.
2227         * timediff match: Match for values with an invalid timestamp.
2228         * value match: Select values by their data sources' values.
2229         * notification target: Create and dispatch a notification.
2230         * replace target: Replace parts of an identifier using regular
2231           expressions.
2232         * set target: Set (overwrite) entire parts of an identifier.
2233         * bind plugin: This new plugin uses the new HTTP/XML interface to BIND
2234           statistics, allowing very detailed name server statistics. Thanks to
2235           Bruno Prémont for this plugin.
2236         * cpu plugin: Report `interrupt' separately when using
2237           sysctlbyname(3) (used under *BSD). Support for sysctl(3), for
2238           example for native OpenBSD support, has been added. Thanks to Simon
2239           Kuhnle for the patch.
2240         * csv plugin: Make it possible to write values to STDOUT instead of
2241           files. This is meant for testing purposes mostly. The output written
2242           to STDOUT is compatible with the exec plugin. Thanks to Doug
2243           MacEachern for the patch.
2244         * curl plugin: This new plugin can be used to read web pages and parse
2245           them using the same mechanism that's used in the tail plugin.
2246         * dbi plugin: This new plugin allows you to connect to a variety of
2247           relational databases and use SQL to gather custom statistics from
2248           it. It is similar to the already existing PostgreSQL plugin but uses
2249           libdbi to communicate with the database(s).
2250         * interface plugin: Use the ignorelist framework when selecting /
2251           ignoring interfaces. This allows one to use regular expressions to
2252           select interfaces, too.
2253         * ipmi plugin: Handle temporary IPMI error conditions more gracefully.
2254           Thanks to Bruno Prémont for this patch.
2255         * memcached plugin: Add hit-ratio metric. Thanks to Doug MacEachern
2256           for the patch.
2257         * mysql plugin: Allow connecting to a database via the UNIX domain
2258           socket, too. Thanks to Mirko Buffoni for the patch.
2259         * network plugin: Further performance improvements for the receive
2260           code. This hopefully will help very large setups.
2261         * openvpn plugin: This new plugin collects statistics provided by the
2262           OpenVPN daemon. Thanks to Doug MacEachern for the patch.
2263         * oracle plugin: This new plugin allows you to connect to an Oracle
2264           database and use SQL to gather custom statistics from it. It is
2265           similar to the already existing PostgreSQL plugin.
2266         * perl plugin: Compatibility fixes for broken versions of Perl 5.10
2267           have been added.
2268         * perl plugin: Export the newly added plugin_write() to Perl plugins.
2269         * perl plugin: Added support for `notification meta data'.
2270         * perl plugin: Added support for the `filter chain' infrastructure by
2271           allowing plugins to register `matches' and `targets'.
2272         * postgresql plugin: The preferred configuration syntax has been
2273           updated to be in line with the syntax used by the new dbi and oracle
2274           plugins. The compatibility code for the old syntax is present.
2275           Support for the new `Result' blocks and the interval parameter has
2276           been added.
2277         * processes plugin: Stacksize and virtual memory usage statistics have
2278           been added. Portability fixes.
2279         * rrdcached plugin: This new plugin uses the (still in development)
2280           RRD accelerator daemon, rrdcached. This daemon works very similar to
2281           the original rrdtool plugin of collectd, but adds some more nice
2282           features.
2283         * swap plugin: Code for OpenBSD (and possibly other *BSDs) has been
2284           added.
2285
2286 2009-05-09, Version 4.5.4
2287         * Build system, various plugins: Many build fixes for FreeBSD,
2288           OpenBSD, NetBSD, Solaris and Mac OS X. Big thanks to Doug MacEachern
2289           for many fixes and providing a build system for many platforms,
2290           Ulf Zimmermann for providing a FreeBSD system and Simon Kuhnle for
2291           providing an OpenBSD system.
2292         * collectd: Fix a potential race condition when creating directories.
2293         * battery plugin: Don't complain about a missing directory every
2294           interval.
2295         * dns plugin: Slight portability fixes.
2296         * exec plugin: Allow executed programs to close STDERR. Thanks to
2297           Thorsten von Eicken for reporting this problem.
2298         * irq plugin: Fix handling of overflowing 32-bit counters. Thanks to
2299           Tomasz Pala for the patch.
2300         * perl plugin: Portability build-fixes. Thanks to Doug MacEachern for
2301           the patch.
2302         * rrdtool plugin: Fix a possible race condition: If the network plugin
2303           is initialized and dispatches a value before the rrdtool plugin is
2304           initialized, the daemon may crash.
2305         * memory plugin: Fix a potential problem under Solaris.
2306
2307 2009-02-22, Version 4.5.3
2308         * build system: The check for libupsclient even when `pkg-config' is
2309           not available.
2310         * collectd: Fix error handling in the global cache.
2311         * Collectd::Unixsock: Error handling has been improved.
2312         * ascent plugin: Fix a memory leak. Thanks to Bruno Prémont for his
2313           patch.
2314         * ipmi plugin: Fix an off-by-one error which could cause segmentation
2315           faults. Thanks to Peter Holik for his patch.
2316         * tcpconns plugin: An endianness problem has been fixed in the *BSD
2317           code. Thanks to "thated" for reporting this.
2318
2319 2009-01-02, Version 4.5.2
2320         * build system: Check for `mysql.h' and `mysql/mysql.h', since the
2321           file may be in both locations, especially when the database was
2322           installed in a non-standard path. Thanks to Dusty Doris for
2323           reporting this.
2324         * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
2325           Solaris, in the configure script automatically.
2326         * build system, tcpconns plugin: Check for `kvm_nlist' and
2327           `kvm_openfiles' before enabling the plugin: Solaris provides a KVM
2328           library with similar functions to the BSD variant, but doesn't
2329           provide these necessary functions.
2330         * collectd.conf(5): Various fixes and clarifications.
2331         * collectd: Remove a GNUism (unnamed unions), thus improving
2332           portability.
2333         * collectd, apcups plugin: Include "collectd.h" before <stdlib.h>.
2334           This solves portability problems, especially for Solaris.
2335         * dns plugin: Fix a portability problem with NetBSD.
2336         * filecount plugin: Fix an off-by-one error. This error may cause a
2337           segmentation fault.
2338         * network plugin: Fix the handling of `type' in the network protocol.
2339           Due to a programming mistake, only 4 or 8 bytes would be copied to a
2340           much larger buffer. This caused the `type' to be transferred much
2341           more often than necessary. In some cases, e. g. the `cpu' and
2342           `cpufreq' plugins being used at the same time, data may be corrupted
2343           in those files. Thanks to Bruno Prémont for debugging and reporting
2344           this issue.
2345         * processes plugin: Fix a possible segmentation fault when specifying
2346           invalid configuration options.
2347         * unixsock plugin: Make sure the initialization function is run only
2348           once. This resolves a file descriptor leak under systems which run
2349           the initialization more than once, such as Solaris.
2350
2351 2008-10-16, Version 4.5.1
2352         * build system: Change `--enable-<plugin>' to abort with an error if
2353           dependencies are not met. Thanks to Bruno Prémont for the patch.
2354           Also, the poisoning of various string functions has been restricted
2355           to debug builds.
2356         * collectd: Fix a memory leak in the global value cache. With every
2357           *missing* value a couple of bytes would be leaked. Another memory
2358           leak in the configuration handling code has been fixed. Thanks to
2359           Niraj Tolia for reporting these issues.
2360         * collectd: Fix an off-by-one error in the ignorelist functionality.
2361           When using regular expressions, the last character would be missing,
2362           possibly matching differently from what one would expect.
2363         * collectdmon: Don't block SIGCHLD. This fixes a potential portability
2364           problem.
2365         * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
2366           Linzberger for reporting the bug.
2367         * iptables plugin: Fix an off-by-one error. If a string was just one
2368           character too long, it was truncated instead of reporting an error.
2369         * network plugin: Fix a memory leak in the configuration handling
2370           code. Thanks to Niraj Tolia for reporting this issue.
2371         * perl plugin: Log an error message if bootstrapping `Collectd' fails.
2372         * postgresql plugin: Don't reopen connection during reinitialization.
2373           This fixes a bug under Solaris and potentially other platforms.
2374           Missing calls to `PQclear' have been added, too. This fixes memory
2375           leaks. Thanks to ``Admin'' for reporting these bugs.
2376         * snmp plugin: Don't expect null-terminated strings from the Net-SNMP
2377           library.
2378         * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
2379           problems with some `libc's. Thanks to Matthias Lay for reporting the
2380           bug.
2381
2382 2008-09-04, Version 4.5.0
2383         * collectd: Added the ability to flush certain identifiers.
2384         * collectd: The concept of `notification meta data' has been
2385           introduced.
2386         * filecount plugin: The new filecount plugin counts the number of
2387           files in a directory and its subdirectories.
2388         * ipmi plugin: Sensor names have been changed to ensure unique names.
2389           Notifications upon added and removed sensors can now be generated.
2390         * notify_desktop plugin: This new plugin sends notifications to the
2391           X desktop using the structure defined in the `Desktop Notification
2392           Specification'.
2393         * notify_email plugin: This new plugin sends out notifications via
2394           email, using the `esmtp' library.
2395         * onewire plugin: The new experimental(!) onewire plugin reads values,
2396           such as temperatures, from sensors connected to the computer via the
2397           onewire bus.
2398         * perl plugin: Improved synchronized access to internal data structures
2399           and fixed a possible dead-lock.
2400         * perl plugin: Added the ability to flush certain identifiers and marked
2401           plugin_flush_all() and plugin_flush_one() as deprecated in favor of
2402           plugin_flush().
2403         * perl plugin: Added the ability to configure Perl plugins.
2404         * postgresql plugin: The new postgresql plugin collects statistics
2405           about or from a PostgreSQL database.
2406         * processes plugin: The `ProcessMatch' option has been added.
2407         * rrdtool plugin: Implement throttling of the `update queue' to lessen
2408           IO load.
2409         * tcpconns plugin: This plugin has been ported to OpenBSD.
2410         * thermal plugin: The new thermal plugin collects system temperatures
2411           using Linux ACPI thermal zone data.
2412
2413 2009-01-02, Version 4.4.5
2414         * build system: Check for `mysql.h' and `mysql/mysql.h', since the
2415           file may be in both locations, especially when the database was
2416           installed in a non-standard path. Thanks to Dusty Doris for
2417           reporting this.
2418         * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
2419           Solaris, in the configure script automatically.
2420         * collectd.conf(5): Various fixes and clarifications.
2421         * apcups plugin: Include "collectd.h" before <stdlib.h>. This solves
2422           portability problems, especially for Solaris.
2423         * dns plugin: Fix a portability problem with NetBSD.
2424         * network plugin: Fix the handling of `type' in the network protocol.
2425           Due to a programming mistake, only 4 or 8 bytes would be copied to a
2426           much larger buffer. This caused the `type' to be transferred much
2427           more often than necessary. In some cases, e. g. the `cpu' and
2428           `cpufreq' plugins being used at the same time, data may be corrupted
2429           in those files. Thanks to Bruno Prémont for debugging and reporting
2430           this issue.
2431         * unixsock plugin: Make sure the initialization function is run only
2432           once. This resolves a file descriptor leak under systems which run
2433           the initialization more than once, such as Solaris.
2434
2435 2008-10-16, Version 4.4.4
2436         * build system: Change `--enable-<plugin>' to abort with an error if
2437           dependencies are not met. Thanks to Bruno Prémont for the patch.
2438           Also, the poisoning of various string functions has been restricted
2439           to debug builds.
2440         * collectd: Fix a memory leak in the global value cache. With every
2441           *missing* value a couple of bytes would be leaked. Another memory
2442           leak in the configuration handling code has been fixed. Thanks to
2443           Niraj Tolia for reporting these issues.
2444         * collectd: Fix an off-by-one error in the ignorelist functionality.
2445           When using regular expressions, the last character would be missing,
2446           possibly matching differently from what one would expect.
2447         * collectdmon: Don't block SIGCHLD. This fixes a potential portability
2448           problem.
2449         * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
2450           Linzberger for reporting the bug.
2451         * network plugin: Fix a memory leak in the configuration handling
2452           code. Thanks to Niraj Tolia for reporting this issue.
2453         * perl plugin: Log an error message if bootstrapping `Collectd' fails.
2454         * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
2455           problems with some `libc's. Thanks to Matthias Lay for reporting the
2456           bug.
2457
2458 2008-09-01, Version 4.4.3
2459         * collectd: Fix a memory leak in the threshold checking code.
2460         * memcached plugin: Fix a too short timeout and a related file
2461           descriptor leak.
2462         * memory plugin: A typo in the libstatgrab code has been fixed.
2463         * snmp plugin: Fix a possible memory leak.
2464
2465 2008-07-15, Version 4.4.2
2466         * build system: Use pkg-config to detect the upsclient library.
2467         * collectd: Try even harder to determine the endianness of the
2468           architecture collectd is being built on.
2469         * disk plugin: Fix for Linux 2.4: A wrong field was used as the name
2470           of disks.
2471         * dns plugin: Fix compilation errors with BIND versions 19991001
2472           through 19991005.
2473         * network plugin: Bugfix in the init routine: The init function
2474           cleared a buffer regardless of its contents. This could lead to lost
2475           values under Solaris.
2476         * nginx plugin: Remove usage of the thread-unsafe `strtok' function.
2477         * vserver plugin: Remove usage of the thread-unsafe `readdir'
2478           function.
2479         * wireless plugin: Work around incorrect noise and power values
2480           returned by some broken drivers.
2481
2482 2008-06-03, Version 4.4.1
2483         * collectd: Fix the `DataSource' option within `Type' blocks. Thanks
2484           to kyrone for reporting this.
2485         * collectd: Fixed min/max output in notifications generated by
2486           threshold checking.
2487         * collectd-nagios: Fix the protocol used to communicate with the
2488           daemon.
2489         * perl plugin: Fail noisily, but don't shutdown the daemon, if
2490           initialization has errors. An issue with Perl 5.10 has been fixed.
2491         * teamspeak2 plugin: Fixed an out of bound array access. Thanks to
2492           René Rebe and Siegmund Gorr for reporting this.
2493
2494 2008-05-06, Version 4.4.0
2495         * collectd: Internal code cleanups.
2496         * collectd: Added support for a `Flush' command in the unixsock and
2497           exec plugins. This command can be used to force a plugin (or all) to
2498           flush its values to disk.
2499         * collectd: Thresholds can now be configured to apply to one data
2500           source only, making it possible to configure different thresholds
2501           for each data source.
2502         * apache, nginx plugins: Added the possibility to disable host and/or
2503           peer verification.
2504         * ascent plugin: The new ascent plugin reads and parses the statistics
2505           page of an Ascent server.
2506         * cpu plugin: Support for the statgrab library has been added.
2507         * disk plugin: The possibility to ignore certain disks or collect only
2508           specific disks has been added.
2509         * disk plugin: Support for the statgrab library has been added.
2510         * ipmi plugin: The new ipmi plugin uses the OpenIPMI library to read
2511           sensor values via IPMI, the intelligent platform management
2512           interface.
2513         * iptables plugin: The iptc library that is used by the iptables
2514           plugin has been added to the distribution, because it is not
2515           provided by all distributions and removed from at least one.
2516         * powerdns plugin: The new powerdns plugin reads statistics from an
2517           authoritative or a recursing PowerDNS name server.
2518         * rrdtool plugin: The size of the files generated with the default
2519           configuration has been decreased.
2520         * tail plugin: The new tail plugin can be used to gather statistics by
2521           continuously reading from log files.
2522         * teamspeak2 plugin: The new teamspeak2 plugin connects to a
2523           TeamSpeak2 server and collects statistics about the number of users
2524           and number of channels.
2525         * users plugin: Support for the statgrab library has been added.
2526         * vmem plugin: The new vmem plugin collects very detailed statistics
2527           about the virtual memory subsystem of Linux.
2528
2529 2008-08-30, Version 4.3.4
2530         * Build system: Improved detection of and linking with the statgrab
2531           library.
2532         * collectd: Portability fixes, especially to determine endianness more
2533           reliable.
2534         * Various plugins: Fix format strings.
2535         * disk plugin: A fix for giving disks under Linux 2.4 the right names
2536           again has been applied.
2537         * memcached plugin: Fix a too short timeout and a related file
2538           descriptor leak.
2539         * memory plugin: A typo in the libstatgrab code has been fixed.
2540         * network plugin: A fix in the initialization function solves problems
2541           under Solaris.
2542         * nginx plugin: A thread-unsafe function has been replaced.
2543         * vserver plugin: A thread-unsafe function has been replaced.
2544         * wireless plugin: A work-around for broken wireless drivers has been
2545           added.
2546
2547 2008-04-22, Version 4.3.3
2548         * build system: Improved detection of several libraries, especially if
2549           they are in non-standard paths.
2550         * build system: Portability fixes: Automatically define "_REENTRANT"
2551           if the libc expects it.
2552         * collectd: Error and warning messages have been improved.
2553         * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
2554           using them.
2555         * apache plugin: Allocate new memory when reading a webpage instead of
2556           using a buffer of static size.
2557         * exec plugin: Close (almost) all filedescriptors before exec(2)ing
2558           the program.
2559         * hddtemp plugin: Error and warning messages have been improved.
2560         * sensors plugin: Fix sensor collection for some chip types.
2561
2562 2008-03-29, Version 4.3.2
2563         * collectd: Fix configuration of the `FailureMax', `WarningMax', and
2564           `Persist' threshold options.
2565         * collectd: Fix handling of missing values in the global value cache.
2566         * collectd: Improved error messages when parsing the configuration.
2567         * sensors plugin: Fix temperature collection with libsensors4.
2568         * unixsock plugin: Fix mixed input and output operation on streams.
2569         * wireless plugin: Fix reading noise value.
2570
2571 2008-03-05, Version 4.3.1
2572         * exec plugin: Set supplementary group IDs.
2573         * network plugin:
2574           + Use `memcpy' when constructing/parsing a package to avoid
2575             alignment problems on weird architectures, such as Sparc.
2576           + Translate doubles to/from the x86 byte representation to ensure
2577             cross-platform compatibility.
2578         * ping plugin: Correct the handling of the `TTL' setting.
2579         * swap plugin: Reapply a patch for Solaris.
2580         * tcpconns plugin: Portability improvements.
2581
2582 2008-02-18, Version 4.3.0
2583         * collectd: Notifications have been added to the daemon. Notifications
2584           are status messages that may be associated with a data instance.
2585         * collectd: Threshold checking has been added to the daemon. This
2586           means that you can configure threshold values for each data
2587           instance. If this threshold is exceeded a notification will be
2588           created.
2589         * collectd: The new `FQDNLookup' option tells the daemon to use the
2590           full qualified domain name as the hostname, not just the host part
2591           es returned by `gethostname(2)'.
2592         * collectd: Support for more than one `TypesDB' file has been added.
2593           This is useful when one such file is included in a package but one
2594           wants to add custom type definitions.
2595         * collectd: The `Include' config option has been expanded to handle
2596           entire directories and shell wildcards.
2597         * collectdmon: The new `collectdmon' binary detects when collectd
2598           terminates and automatically restarts it again.
2599         * csv plugin: The CSV plugin is now able to store counter values as a
2600           rate, using the `StoreRates' configuration option.
2601         * exec plugin: Handling of notifications has been added and the
2602           ability to pass arguments to the executed programs has been added.
2603         * hddtemp plugin: The new `TranslateDevicename' option lets you
2604           disable the translation from device names to major-minor-numbers.
2605         * logfile plugin: Handling of notifications has been added.
2606         * ntpd plugin: The new `ReverseLookups' can be used to disable reverse
2607           domain name lookups in this plugin.
2608         * perl plugin: Many internal changes added support for handling multiple
2609           threads making the plugin reasonably usable inside collectd. The API has
2610           been extended to support notifications and export global variables to
2611           Perl plugins; callbacks now have to be identified by name rather than a
2612           pointer to a subroutine. The plugin is no longer experimental.
2613         * uuid plugin: The new UUID plugin sets the hostname to an unique
2614           identifier for this host. This is meant for setups where each client
2615           may migrate to another physical host, possibly going through one or
2616           more name changes in the process. Thanks to Richard Jones from
2617           Red Hat's Emerging Technology group for this plugin.
2618         * libvirt: The new libvirt plugin uses the `libvirt' library to query
2619           CPU, disk and network statistics about guest systems on the same
2620           physical server. Thanks to Richard Jones from Red Hat's Emerging
2621           Technology group for this plugin.
2622
2623 2008-04-22, Version 4.2.7
2624         * build system: Improved detection of several libraries, especially if
2625           they are in non-standard paths.
2626         * build system: Portability fixes: Automatically define "_REENTRANT"
2627           if the libc expects it.
2628         * collectd: Error and warning messages have been improved.
2629         * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
2630           using them.
2631         * apache plugin: Allocate new memory when reading a webpage instead of
2632           using a buffer of static size.
2633         * exec plugin: Close (almost) all filedescriptors before exec(2)ing
2634           the program.
2635         * hddtemp plugin: Error and warning messages have been improved.
2636         * sensors plugin: Fix sensor collection for some chip types.
2637
2638 2008-03-29, Version 4.2.6
2639         * collectd: Improved error messages when parsing the configuration.
2640         * sensors plugin: Fix temperature collection with libsensors4.
2641         * unixsock plugin: Fix mixed input and output operation on streams.
2642         * wireless plugin: Fix reading noise value.
2643
2644 2008-03-04, Version 4.2.5
2645         * apache plugin: Improved initialization and error messages.
2646         * exec plugin: Set supplementary group IDs.
2647         * network plugin:
2648           + Create separate threads for reading from the socket and parsing
2649             and dispatching incoming packets. Versions prior to this may have
2650             problems in high-load situations, where the socket receive buffers
2651             overflows, resulting in gaps in the data.
2652           + Use `memcpy' when constructing/parsing a package to avoid
2653             alignment problems on weird architectures, such as Sparc.
2654           + Translate doubles to/from the x86 byte representation to ensure
2655             cross-platform compatibility.
2656         * ping plugin: Correct the handling of the `TTL' setting.
2657         * rrdtool plugin: Ensure correct handling of the `RRATimespan' option.
2658         * swap plugin: Reapply a patch for Solaris.
2659         * tcpconns plugin: Portability improvements.
2660
2661 2008-01-21, Version 4.2.4
2662         * unixsock plugin: A bug in the unixsock plugin caused it not to set
2663           the permission on the socket as documented in the manpage. Thanks to
2664           Evgeny Chukreev for fixing this issue.
2665         * collectd: The documentation has been improved.
2666
2667 2007-12-28, Version 4.2.3
2668         * sensors plugin: Updated the plugin to build and work with version 3
2669           of the libsensors library.
2670
2671 2007-12-15, Version 4.2.2
2672         * nginx plugin: Incorrect comparison of strings lead to a segfault
2673           when using the plugin. Thanks to Saulius Grigaliunas for fixing
2674           this.
2675         * logfile plugin: The config option `Timestamp' was handled
2676           incorrectly and basically always active. Thanks to Luke Heberling
2677           for fixing this.
2678
2679 2007-11-08, Version 4.2.1
2680         * tcpconns plugin: Don't complain about a missing file if IPv6 is not
2681           enabled on the host.
2682         * snmp plugin: Fix a memory leak.
2683
2684 2007-10-27, Version 4.2.0
2685         * collectd: The new config option `Include' lets you include other
2686           configfiles and thus split up your config into smaller parts. This
2687           may be especially interesting for the snmp plugin to keep the data
2688           definitions separate from the host definitions.
2689         * ipvs plugin: The new `ipvs' plugin collects IPVS connection statistics
2690           (number of connections, octets and packets for each service and
2691           destination). Thanks to Sebastian Harl for this plugin.
2692         * memcached plugin: The new `memcached' plugin connects to a memcached
2693           daemon process and collects statistics of this distributed caching
2694           system. Thanks to Antony Dovgal for contributing this plugin.
2695         * nginx plugin: The new `nginx' plugin reads the status page of an
2696           nginx daemon and saves the handled connections and requests.
2697         * perl plugin: Many changes, including the added `EnableDebugger'
2698           config option which lets you debug your Perl plugins more easily.
2699         * rrdtool plugin: Use the thread-safe RRD-library if available. Try to
2700           be more thread-safe otherwise by locking calls to the library.
2701         * snmp plugin: Added the options `Scale' and `Shift' to Data-blocks to
2702           correct the values returned by SNMP-agents. If a <data> block is
2703           defined as `table' the instance is now optional. The sequence number
2704           is used as the type-instance in this case. The new `InstancePrefix'
2705           option allows to add arbitrary prefixes to the type-instance.
2706         * tcpconns plugin: The new `tcpconns' plugin collects the number of
2707           certain TCP connections and what state they're in. This can be used
2708           to see how many connections your FTP server has to handle or how
2709           many outgoing connections your mailserver has open.
2710
2711 2008-01-11, Version 4.1.6
2712         * unixsock plugin: A bug in the unixsock plugin caused it not to set
2713           the permission on the socket as documented in the manpage. Thanks to
2714           Evgeny Chukreev for fixing this issue.
2715         * collectd: The documentation has been improved.
2716
2717 2007-12-27, Version 4.1.5
2718         * rrdtool plugin: Fix a memory leak that only occurred in very-low-
2719           memory situations.
2720         * sensors plugin: Updated the plugin to build and work with version 3
2721           of the libsensors library.
2722
2723 2007-11-08, Version 4.1.4
2724         * Build system: Improve detection of the rrd library, especially if
2725           it's in a non-standard location.
2726         * Build system: A bug when parsing the argument for
2727           `--with-libnetsnmp' has been fixed.
2728         * collectd: Implement `strerror_r' if the libc doesn't provide it.
2729         * rrdtool plugin: Fix a bug in the shutdown sequence that might cause
2730           a deadlock or delay when shutting down the daemon.
2731         * snmp plugin: Fix a memory leak.
2732
2733 2007-10-24, Version 4.1.3
2734         * collectd: A build issue under Solaris has been resolved by renaming
2735           data types.
2736         * rrdtool plugin: Use the thread-safe RRD-library if available. Try to
2737           be more thread-safe otherwise by locking calls to the library.
2738
2739 2007-09-28, Version 4.1.2
2740         * apcups plugin: Fix reporting of the `load percent' data.
2741         * wireless plugin: Correct the handling of cards returning signal and
2742           noise quality as percentage.
2743         * perl plugin: Fix a possible buffer overflow in get_module_name().
2744         * build system: Further improve the detection of libraries.
2745         * netlink plugin: Build issues under some older versions of the Linux
2746           includes (i. e. Debian Sarge) have been fixed.
2747         * snmp plugin: Fix a potential segfault when a host times out. Add
2748           support for the `timeticks' type. 
2749
2750 2007-09-12, Version 4.1.1
2751         * Build system: The detection of `libnetlink' has been improved.
2752         * collectd: The documentation has been fixed in numerous places.
2753         * exec plugin: Setting the group under which to run a program has been
2754           fixed.
2755         * collectd: The `sstrerror' function was improved to work correctly
2756           with the broken GNU version of `strerror_r'.
2757         * collectd: Write an error message to STDERR when loading of a plugin
2758           fails.
2759         * apcups plugin: Fix the `types' used to submit the values: They still
2760           has an `apcups_' prefix which doesn't work anymore.
2761         * rrdtool plugin: Create new RRD-files with the `begin' time set to
2762           whatever the client thinks is `now'..
2763
2764 2007-09-01, Version 4.1.0
2765         * Build system: The build system has been changed to automatically
2766           disable all plugins, which are missing dependencies. The dependency
2767           checking has been removed from the plugins themselves to remove
2768           redundancy.
2769         * Flexible interval: The interval of collected data is now sent along
2770           with the data itself over the network, so that the interval-settings
2771           of server and clients no longer needs to match.
2772         * netlink plugin: The new `netlink' plugin connects to the Linux
2773           kernel using a netlink socket and uses it to query information about
2774           interfaces, qdiscs and classes.
2775         * rrdtool plugin: The cache is now dumped to disk in an extra thread
2776           to not block data collection.
2777         * snmp plugin: The new `snmp' plugin can read values from SNMP enabled
2778           network devices, such as switches, routers, thermometers, rack
2779           monitoring servers, etc. The collectd-snmp(5) manpage documents this
2780           plugin.
2781         * unixsock plugin: Added the `LISTVAL' command.
2782         * xmms plugin: The new `xmms' plugin graphs the bitrate and frequency
2783           of music played with xmms.
2784
2785 2007-09-28, Version 4.0.9
2786         * apcups plugin: Fix reporting of the `load percent' data.
2787         * wireless plugin: Correct the handling of cards returning signal and
2788           noise quality as percentage.
2789         * perl plugin: Fix a possible buffer overflow in get_module_name().
2790
2791 2007-09-12, Version 4.0.8
2792         * collectd: The `sstrerror' function was improved to work correctly
2793           with the broken GNU version of `strerror_r'.
2794         * collectd: Write an error message to STDERR when loading of a plugin
2795           fails.
2796         * apcups plugin: Fix the `types' used to submit the values: They still
2797           has an `apcups_' prefix which doesn't work anymore.
2798         * rrdtool plugin: Create new RRD-files with the `begin' time set to
2799           whatever the client thinks is `now'..
2800
2801 2007-08-26, Version 4.0.7
2802         * documentation: Some typos have been fixed and some information has
2803           been improved.
2804         * build system: Many fixes for detecting libraries in unusual places,
2805           such as on RedHat systems. The affected libraries are `libcurl',
2806           `libmysql', and `libupsclient'.
2807         * network plugin: Allow the `Port' option to be specified as a number
2808           (i. e. without quotes).
2809         * nut plugin: A fix allows linking the nut plugin against
2810           libupsclient, version >= 2.2.0.
2811         * processes plugin: Fix a potential segmentation fault.
2812
2813 2007-07-30, Version 4.0.6
2814         * sensors plugin: Fix the ignorelist functionality: Only the `type
2815           instance' was used to match against the list, but the documentation
2816           told otherwise. This release fixes the code, so it complies with the
2817           documentation.
2818         * syslog plugin: Call `openlog' right when the plugin is loaded, so
2819           configuration messages will end up in the logging facility.
2820         * conrtib/fedora: The contributed specfile for Fedora has been
2821           updated.
2822
2823 2007-07-05, Version 4.0.5
2824         * Portability: More fixes for OpenBSD have been included.
2825
2826 2007-06-24, Version 4.0.4
2827         * cpu plugin: Fixed the Solaris code.
2828         * dns plugin: Fixed a build issue for OpenBSD.
2829         * interface plugin: Fixed the Solaris code.
2830         * load plugin: Fixed the alternative `/proc' Linux code.
2831         * memory plugin: Fixed the Solaris code.
2832         * oconfig: Don't require `-lfl' anymore.
2833
2834 2007-06-19, Version 4.0.3
2835         * cpu plugin: Fix the Darwin / Mac OS X code.
2836         * ping plugin: Use the return value of `getpid', not its address.
2837         * csv, rrdtool plugin: Fixed a bug that prevented an buffer to be
2838           initialized correctly.
2839         * configure: Added `--with-nan-emulation' to aid cross compilation.
2840
2841 2007-06-12, Version 4.0.2
2842         * hddtemp and ntpd plugin: Corrected the parsing of port numbers when
2843           they're given in numerically form.
2844
2845 2007-06-07, Version 4.0.1
2846         * iptables plugin: A bug in the configuration routine has been fixed.
2847           Setting a comment in the configfile will no longer cause a
2848           segmentation fault.
2849
2850 2007-06-03, Version 4.0.0
2851         * collectd: The plugin-infrastructure has been changed to allow for
2852           more types of plugins, namely `write' and `log' plugins.
2853         * collectd: The read-function has been changed to read many plugins in
2854           parallel, using threads. Thus, plugins generally need to use
2855           thread-safe functions from now on.
2856         * collectd: The '-t' command line options allows to perform syntax tests
2857           of the configuration file and exit immediately.
2858         * csv plugin: The new `csv' plugin handles output to `comma separated
2859           values'-files.
2860         * rrdtool plugin: The new `rrdtool' plugin handles output to
2861           RRD-files. Data can be cached to combine multiple updates into one
2862           write to increase IO-performance.
2863         * network plugin: The new `network' plugin handles IO via the network.
2864           It implements a different, much more extensible protocol which can
2865           combine many values in one packet, decreasing the number of UDP-
2866           packets being sent. It can read from and send to the network and
2867           with the appropriate configuration even forward packets to other
2868           networks.
2869         * unixsock plugin: The new `unixsock' plugin provides an interface to
2870           communicate with the daemon while it is running. Right now the
2871           commands `GETVAL' and `PUTVAL' are implemented, but more are to
2872           come.
2873         * perl plugin: The new `perl' plugin allows you to write extensions
2874           for collectd in the scripting-language Perl.
2875         * logfile plugin: The new `logfile' plugin writes logmessages to files
2876           or STDOUT or STDERR.
2877         * syslog plugin: The new `syslog' plugin sends logmessages to the
2878           system's syslog daemon.
2879         * entropy plugin: The new `entropy' plugin collects the amount of
2880           entropy currently being available to the system.
2881         * exec plugin: The new `exec' plugin forks child processes and reads
2882           back values provided by the forked processes.
2883         * iptables plugin: The new `iptables' plugin reads counters from
2884           iptables rules. Thanks to Sjoerd van der Berg for contributing this
2885           plugin.
2886         * irq plugin: The new `irq' plugin collects the IRQ-counters. Thanks
2887           to Peter Holik for contributing this plugin.
2888         * nut plugin: The new `nut' plugin connects the upsd of the `network
2889           ups tools' and reads information about the connected UPS.
2890         * apache plugin: Support for lighttpd's `BusyServers' (aka.
2891           connections) field was added by Florent Monbillard.
2892         * collectd-nagios: The new `collectd-nagios' binary queries values
2893           from collectd, parses them and exits according to Nagios-standards.
2894         * manpages: The manpages have been improved a lot.
2895
2896 2007-09-28, Version 3.11.7
2897         * wireless plugin: Correct the handling of cards returning signal and
2898           noise quality as percentage.
2899
2900 2007-08-31, Version 3.11.6
2901         * processes plugin: Fix a potential segmentation fault.
2902
2903 2007-05-29, Version 3.11.5
2904         * configure: Added `AC_SYS_LARGEFILE' for LFS.
2905         * ntpd plugin: Fix a potential buffer overflow.
2906         * processes plugin: Fix a bug when run under Linux 2.4. All processes
2907           were accounted as `zombies'.
2908
2909 2007-04-10, Version 3.11.4
2910         * dns plugin: Change the order of includes to make the plugin compile
2911           under FreeBSD.
2912
2913 2007-03-30, Version 3.11.3
2914         * configure: Have the configure-script define `HAVE_LIBKSTAT' instead
2915           of the unused `COLLECT_KSTAT'.
2916
2917 2007-02-11, Version 3.11.2
2918         * plugin: Catch NULL-pointer and try to fix them. Otherwise the
2919           NULL-pointer may have been passed to `printf' which causes a
2920           segfault with some libcs.
2921
2922 2007-02-10, Version 3.11.1
2923         * df plugin: Some wrong defines have been fixed so the plugin works
2924           under Solaris again.
2925         * dns plugin: The usage of a struct has been fixed to work with
2926           non-GNU libcs.
2927         * processes plugin: Some missing defines have been added so the plugin
2928           compiles cleanly under FreeBSD and presumably other UNIXes.
2929
2930 2006-12-22, Version 3.11.0
2931         * collectd: The new command line option `-P' makes it easier for
2932           distributors to change the location of PID-files.
2933         * collectd: The daemon shuts down faster now which makes it easier to
2934           write init.d-scripts for it.
2935         * apache plugin: Increase the buffersize to 16k, because the 4k buffer
2936           caused problems every now and then.
2937         * df plugin: New config options allow to ignore certain mountpoints,
2938           filesystem types or devices.
2939         * dns plugin: The new dns plugin uses `libpcap' to capture DNS traffic
2940           and interprets it. It collects traffic as well as qtype, opcode and
2941           rcode counts.
2942         * email plugin: Sebastian Harl has contributed this plugin which
2943           counts received mails in categories (e. g. ham, spam, virus), spam
2944           score (as given by SpamAssassin) and check types.
2945         * mbmon plugin: Flavio Stanchina has contributed this plugin which
2946           uses `mbmon' to gather information from sensors on the motherboard.
2947         * processes plugin: Collect detailed statistics for configured
2948           processes, that's process and thread count, CPU usage, resident
2949           segment size and pagefaults.
2950         * multimeter plugin: Peter Holik contributed a new plugin which
2951           queries multimeters.
2952         * sensors plugin: Lubos Stanek has put much effort into improving this
2953           plugin, including `extended naming', collection of voltage values
2954           and the possibility to ignore certain values.
2955
2956 2006-12-21, Version 3.10.4
2957         * Max Kellermann has identified a bug in the server routine: When
2958           opening a socket fails the daemon will (re)try opening the socket in
2959           an endless loop, ultimately leading to a `EMFILE' error.
2960
2961 2006-11-04, Version 3.10.3
2962         * Lubos Stanek has identified a bug in the ntpd-plugin: When the
2963           ntpd's reply was sent in more than one packet, the buffer size was
2964           calculated incorrectly, resulting in the reading of uninitialized or
2965           freed memory.
2966
2967 2006-11-01, Version 3.10.2
2968         * The sample config file has been improved.
2969         * Errors in the manpages have been corrected.
2970         * The ping-plugin now adds hosts during initialization, not during
2971           startup. This speeds up startup when no network connectivity is
2972           available. Also, the hosts are being added later when the network is
2973           available.
2974         * Improved BSD-support for the df-plugin.
2975         * Fixed syntax errors in the swap-plugin for Mac OS X.
2976         * Fix a wrong structure being passed to `getnameinfo' in the ntpd-
2977           plugin.
2978         * Don't disable the mysql-plugin if connecting to the database fails
2979           during initialization. Instead, try again in increasing intervals.
2980
2981 2006-07-19, Version 3.10.1
2982         * A bug in the apcups plugin was fixed: Is the plugin is loaded, but
2983           the apcups cannot be reached, unconnected sockets will pile up and
2984           eventually lead to `Too many open files' errors.
2985
2986 2006-07-09, Version 3.10.0
2987         * The `disk' plugin has been ported to Darwin.
2988         * The `battery' plugin should work on many Apple computers now.
2989         * The `traffic' plugin can now ignore certain interfaces. Also,
2990           statistics for sent/received packets and errors have been added.
2991         * A plugin to monitor APC UPSes using `apcupsd' has been added. Thanks
2992           to Anthony Gialluca for contributing this plugin and providing me
2993           with a test environment :)
2994         * A plugin for monitoring an NTP instance and the local clock drift
2995           has been added.
2996
2997 2006-06-25, Version 3.9.4
2998         * The Solaris code in the `swap' plugin has been changed to reflect
2999           the numbers returned by `swap -s'. Thanks to Christophe Kalt for
3000           working this out.
3001         * The debugging system has been fixed to work with the Sun libc.
3002         * When built without librrd the variable `operating_mode' could be
3003           uninitialized. Thanks to David Elliot for reporting the bug.
3004
3005 2006-06-01, Version 3.9.3
3006         * Fixed the ping-plugin under FreeBSD and Mac OS X. Potentially other
3007           operating systems also profit from the changes, but I wasn't able to
3008           check that.
3009         * Changed the build system to find the netinet-includes under FreeBSD
3010           and therefore successfully build the `liboping' library there.
3011
3012 2006-05-09, Version 3.9.2
3013         * Applied a patch to the `liboping' library. Due to a bug in the
3014           sequence checking the `ping' plugin stopped working after
3015           approximately 7.6 days.
3016
3017 2006-05-09, Version 3.8.5
3018         * Applied a patch to the `liboping' library. Due to a bug in the
3019           sequence checking the `ping' plugin stopped working after
3020           approximately 7.6 days.
3021
3022 2006-04-21, Version 3.9.1
3023         * Build issues with Solaris and possible other architectures have been
3024           resolved.
3025         * Problems when building the `apache'-plugin without `libcurl' have
3026           been resolved.
3027         * A bug in the `ping' plugin has been fixed. Sorry folks.
3028
3029 2006-04-02, Version 3.9.0
3030         * A plugin to monitor the Apache webserver has been added.
3031           <http://httpd.apache.org/>
3032         * A plugin to collect statistics about virtual servers using VServer.
3033           <http://linux-vserver.org/> Thanks to Sebastian Harl for writing
3034           this plugin :)
3035         * A plugin for wireless LAN cards has been added. It monitors signal
3036           strength, link quality and noise ratio..
3037         * A plugin for Apple hardware sensors has been added.
3038         * An option to compile collectd with different `step' and `heartbeat'
3039           settings has been added. The size of RRAs is no longer static but
3040           calculated based on the settings for `step' and `width'.
3041         * The `ping' plugin can now be configured to use a certain TTL.
3042         * A plugin to monitor the hardware sensors of Apple computers has been
3043           added.
3044         * The plugins `cpu', `memory', `processes' and `traffic' have been
3045           ported to Mach/Darwin (Mac OS X).
3046         * The `log mode' has been contributed by Christophe Kalt. It writes
3047           the data into text files rather than RRD files.
3048
3049 2006-04-09, Version 3.8.4
3050         * Applied patch by Vincent Stehlé which improves the disk-name
3051           resolution in the `hddtemp' plugin for Linux systems.
3052
3053 2006-04-02, Version 3.8.3
3054         * Applied a patch by James Byers: The MySQL plugin was not working
3055           with MySQL 5.0.2 or later.
3056
3057 2006-03-14, Version 3.8.2
3058         * `utils_mount.c' has been changed to not use the `MNTTAB' defined by
3059           the GNU libc, because it points to `/etc/fstab' rather than
3060           `/etc/mtab'.
3061
3062 2006-03-13, Version 3.8.1
3063         * Fixes for building collectd under FreeBSD, Mac OS X and Solaris.
3064         * Fixes in the debian `postinst' and `init.d' scripts.
3065
3066 2006-03-09, Version 3.8.0
3067         * The `ping' plugin no longer uses `libping' but a self written
3068           library named `liboping'. With this library it's possible to ping
3069           multiple IPv4 and IPv6 addresses and hostnames - in parallel.
3070
3071 2006-02-18, Version 3.7.2
3072         * A simple bug in the `battery' plugin has been fixed. It should now
3073           work with ACPI based batteries as well. Thanks to Sebastian for
3074           fixing this.
3075         * Fixing a bug that prevented collectd to be built without librrd.
3076           Thanks to Werner Heuser for reporting it.
3077
3078 2006-02-04, Version 3.7.1
3079         * The new network code has been improved to build with older versions
3080           of glibc.
3081         * Fix in `libping' sets the ICMP sequence on outgoing packets. Thanks
3082           to Tommie Gannert for this patch.
3083
3084 2006-01-30, Version 3.7.0
3085         * The `battery' plugin has been added. It collects information about
3086           laptop batteries..
3087         * The MySQL plugin has been improved: It now writes two more RRD
3088           files, `mysql_qcache.rrd' and `mysql_threads.rrd'.
3089         * The `cpufreq' plugin now reads another file since the file it did
3090           read so far causes much overhead in the kernel. Also, you need root
3091           to read the old file, but not to read the new one.
3092         * The `hddtemp' plugin can now be configured to connect to another
3093           address and/or port than localhost.
3094         * The `df' plugin now prefers `statvfs' over `statfs'.
3095         * The network code has been rewritten. collectd now supports unicast
3096           and multicast, and IPv4 and IPv6. Also, the TTL of sent packages can
3097           be set in the configfile.
3098
3099 2006-01-24, Version 3.6.2
3100         * Due to a bug in the configfile handling collectd wouldn't start in
3101           client mode. This released fixes this.
3102
3103 2006-01-20, Version 3.6.1
3104         * Due to a bug in `configure.in' all modules and the binary were
3105           linked against `libmysqlclient'. This issue is solved by this
3106           release.
3107
3108 2006-01-17, Version 3.6.0
3109         * A config file has been added. This allows for loading only specific
3110           plugins.
3111         * A `df' plugin has been added.
3112         * A `mysql' plugin has been added.
3113         * The `ping' plugin doesn't entirely give up hope when a socket error
3114           occurred, but will back of and increase the intervals between tries.
3115
3116 2006-01-21, Version 3.5.2
3117         * Fixed yet another bug in the signal handling.. Stupid typo..
3118         * Improved the ping plugin to not give up on socket errors (backport
3119           from 3.6.0).
3120
3121 2005-12-18, Version 3.5.1
3122         * The PID-file is now deleted correctly when shutting down the daemon.
3123         * SIGINT and SIGTERM are now handled correctly.
3124
3125 2005-12-16, Version 3.5.0 (Revision 326)
3126         * A bug in the `load' module under Solaris has been fixed.
3127         * The `users' module has been contributed by Sebastian Harl. It counts
3128           currently logged in users.
3129         * The CPU module now works under FreeBSD without the use of
3130           `libstatgrab', however SMP support is missing.
3131         * The default directories for the RRD files and the PID file now
3132           depend on the compile time setting of `localstatedir'.
3133
3134 2005-11-15, Version 3.4.0 (Revision 236)
3135         * A PID-file is written to /var/run upon startup. Thanks to `Tommie'
3136           from gentoo's bugzilla for writing the patch.
3137         * The build dependency for librrd has been removed. Binaries built
3138           without librrd are client-only and will multicast their value as
3139           with the `-c' argument.
3140         * A patch by Peter Holik adds a module for monitoring CPU frequencies.
3141         * The newly introduced `-f' switch prevents daemon initialization
3142           (forking, closing standard filehandles, etc.) Thanks to Alvaro
3143           Barcellos for this patch.
3144
3145 2005-11-04, Version 3.3.0 (Revision 216)
3146         * New modules have been added:
3147           - `serial', for monitoring traffic on the serial interfaces
3148           - `nfs', for graphing NFS procedure calls
3149           - `tape', traffic from/to tape devices
3150         * The memory.rrd now accepts more than 4Gig of memory.
3151
3152 2005-10-26, Version 3.2.0 (Revision 200)
3153         * Support for graphing the processes has been added (thanks to Lyonel
3154           Vincent)
3155         * If reading from hddtemp fails collectd will increase the time
3156           between polls up to one day.
3157         * The init.d files have been improved.
3158         * Problems with the spec file have been fixed.
3159
3160 2005-10-16, Version 3.1.0 (Revision 194)
3161         * Added the `setsid' syscall to the startup code.
3162         * Support for hddtemp has been added (thanks to Vincent Stehlé)
3163
3164 2005-09-30, Version 3.0.0 (Revision 184)
3165         * The ability to send/receive data to/from the network (think
3166           multicast) has been added.
3167         * Modules have been split up into shared libraries can be loaded at
3168           runtime. The biggest advantage is that the core program doesn't need
3169           to be linked against an external library.
3170         * A patch by George Kargiotakis has been applied: It fixes the sensors
3171           behaviour then more than one sensor is being queried.
3172
3173 2005-09-16, Version 2.1.0 (Revision 172)
3174         * A module for swap statistics has been added.
3175
3176 2005-09-09, Version 2.0.0 (Revision 135)
3177         * Filenames can no longer be configured at program startup. The only
3178           options as of this version are the directory and ping hosts.
3179         * CPU statistics now include Wait-IO. If provided under Linux IRQ and
3180           Soft-IRQ statistics are added to `System'. 
3181         * Diskstats now collect read and write bytes, not sectors.
3182         * Ping statistics can now be collected for more than one host. There
3183           is no default any more: If no host is given no host will be pinged.
3184         * A self-written patch for libping has been applied so it builds
3185           cleanly.
3186
3187 2005-09-01, Version 1.8.1 (Revision 123)
3188         * Much improved configure-script: libraries and features may now be
3189           disabled.
3190         * More detailed warnings/error messages when RRD update fails.
3191
3192 2005-08-29, Version 1.8.0:
3193         * Support for collecting disk statistics under Solaris.
3194
3195 2005-08-25, Version 1.7.0:
3196         * Support for libstatgrab[1] for load, memory usage and network
3197           traffic. CPU- and disk-usage are not (yet) supported, since
3198           libstatgrab returns insufficient information. I will contact the
3199           authors.
3200         * Improved the CPU-initialization code for Solaris. Apparently CPUs
3201           aren't necessarily counted linear which is now handled correctly.
3202         [1]: http://www.i-scream.org/libstatgrab/
3203
3204 2005-08-21, Version 1.6.0:
3205         * Basic support for Solaris: System load and cpu-usage can be
3206           collected under Solaris, too. Other stats will follow later.
3207         * Many fixes in the autoconf-script
3208         * Collection/Museum scripts have been added under contrib/museum
3209         * collectd may now be started in unprivileged mode, though ping
3210           statistics will not work.
3211
3212 2005-07-17, Version 1.5.1:
3213         * Diskstats-RRDs now use major/minor for naming. Some systems have
3214           weird strings as disk-names..
3215
3216 2005-07-17, Version 1.5:
3217         * A new module, diskstats, has been added. It collects information
3218           about the disks and partitions.
3219
3220 2005-07-11, Version 1.4.2:
3221         * The meminfo module has been changed to work with more platforms
3222           and/or kernel versions.
3223
3224 2005-07-10, Version 1.4.1: Correct traffic stats
3225         * The traffic rrd-file is now created with DS-type `COUNTER' which I
3226           forgot to correct when I changed that module.
3227
3228 2005-07-09, Version 1.4: More traffic stats
3229         * Traffic is now collected for all interfaces that can be found
3230         * Temperature-statistics are read from lm-sensors if available
3231
3232 2005-07-08, Version 1.3: CPU stats
3233         * Collecting CPU statistics now
3234
3235 2005-07-12, Version 1.2: Using syslog
3236         * collectd is now using the syslog facility to report errors, warnings
3237           and the like..
3238         * The default directory is now /var/db/collectd
3239
3240 2005-07-10, Version 1.1: Minor changes
3241         * Nothing really useful to say ;)
3242
3243 2005-07-09, Version 1.0: Initial Version
3244         * The following modules are provided:
3245           * Load average
3246           * Ping time
3247           * Traffic
3248           * Memory info