Fix memory leak in write_riemann
[collectd.git] / ChangeLog
1 2019-10-01, Version 5.9.2
2         * syslog plugin: Don't fail if syslog loglevel doesn't match. Thanks to
3           Fabien Wernli. #3236 #3238
4         * collectd: Fix ssnprintf wrapper. Thanks to Fabien Wernli. #3237
5         * rdt plugin: Fix compile time issues. Thanks to Matthias Runge. #3245
6
7 2019-07-24, Version 5.9.1
8         * collectd: redhat spec: fix build due to new upstream plugins. Thanks
9           to Fabien Wernli. #3175
10         * collectd: regex match: Fix unexpected match with empty meta data .
11           Thanks to Takuro Ashie. #3178
12         * collectd: Fix return value or loglevel for several plugins. Thanks to
13           Fabien Wernli. #3182
14         * collectd: Add standard include early or _FILE_OFFSET_BITS will have
15           definition … . Thanks to Dagobert Michelsen. #3193
16         * collectd: Use GCC-specific flags only when compiling with GCC. Thanks
17           to Dagobert Michelsen. #3195
18         * Use test_utils_proc_pids only when compiling the plugin that uses it.
19           Thanks to Dagobert Michelsen. #3197
20         * DNS plugin: Do not use headers from glibc. Thanks to Pavel Rochnyak.
21           #3156, #3145
22         * collectd: Add missing definitions for libnetsnmpagent. Thanks to
23           Dagobert Michelsen. #3203
24         * collectd: Move Makefile rules for pid_test inside conditional for
25           code. Thanks to Dagobert Michelsen. #3206
26         * collectd: Recover setlocale() call in src/daemon/collectd.c do_init().
27           Thanks to Pavel Rochnyak. #3214, #3181
28         * collectd: Add snprintf wrapper for GCC 8.2/3. Thanks to zebity. #3153,
29           #2895, #3038
30         * collectd: Fix bug that leads to CPPFLAGS gets overridden with CFLAGS
31           when libxmms is enabled. Thanks to Dagobert Michelsen. #3207
32         * Write_Riemann plugin: Copy MetaData to Riemann events in
33           write_riemann. Thanks to Romain Tartière. #3158
34         * virt plugin: Fix memory leak with libvirt MetadataXPath enabled.
35           Thanks to Pavel Rochnyak. #3225, #3230
36
37 2019-06-13, Version 5.9.0
38         * Build System: configure.ac: option "--with-libxml2" has been added.
39           Thanks to Dimitrios Apostolou, Pavel Rochnyak. #2864
40         * Build System: configure.ac: run dpdk build tests only if pkgconfig
41           fails. Thanks to Luca Boccassi, Pavel Rochnyak. #3015
42         * Build System: The "df" plugin is now built when "getmntent_r()" is
43           available. Thanks to Florian Forster. #3095
44         * Build System: The ability to turn on collectd "debug" feature in RPMs
45           has been added. Thanks to dehotot. #2755
46         * collectd: A new "UNKNOWN" state as the initial state of metrics has
47           been added. Thanks to Luis Fernández Álvarez, Florian Forster. #2976
48         * collectd: Base port to Windows. Thanks to Sean Campbell. #2810
49         * collectd: Code ownership of five plugins has been handed out to folks
50           from Intel. Thanks to Florian Forster. #3053
51         * collectd: config parser: Improved error reporting on global options.
52           Thanks to Pavel Rochnyak. #2813
53         * collectd: daemon: make plugin_dispatch_multivalue() obey write queue
54           limits. Thanks to Adam Romanek. #2898
55         * collectd: Macros "STRERROR" and "STRERRNO" have been added. Thanks to
56           Florian Forster. #2519
57         * collectd: Plugin name field has been added to plugin context to
58           improve error reporting. Thanks to Pavel Rochnyak. #2821
59         * collectd-tg: Use "CLOCK_REALTIME" for collectd-tg times. Thanks to
60           Andrew Bays. #2837
61         * tree-wide: Don't initialize static pointers to NULL, use "bool" from
62           "stdbool.h" (instead of "_Bool"). Thanks to Ruben Kerkhof. #2771,
63           #2772
64         * tree-wide: Replace zu with "PRIsz" and llu with "PRIu64". Thanks to
65           Sean Campbell. #2512
66         * tree-wide: Use interval value from plugin context, do not set
67           "vl->interval" in plugins more. Thanks to Pavel Rochnyak. #2847
68         * tree-wide: Utilities and libraries have been moved to "src/utils/".
69           Thanks to Florian Forster. #2961
70         * AMPQ1 plugin: A new plugin to write to amqp1 protocol. Thanks to Andy
71           Smith. #2618
72         * Chrony plugin: Ignoring late responses has been added. Thanks to
73           Miroslav Lichvar, Pavel Rochnyak. #2896
74         * CPUFreq plugin: Read number of p-state transitions and time spent in
75           each p-state. Thanks to Sexton Rory. #2803
76         * cURL, cURL-XML plugins: Option "Interval" has been added. Thanks to
77           Pavel Rochnyak. #2847
78         * Disk plugin: Report number of in progress disk IO requests on FreeBSD.
79           Thanks to Nathan Huff. #2878
80         * Exec plugin: Dynamic allocation of grname buffer has been added.
81           Thanks to sreedi, Florian Forster. #2937
82         * GPU NVML plugin: New plugin to collect NVIDIA GPU stats. Thanks to
83           Evgeny Naumov. #2923
84         * gRPC plugin: The "VerifyPeer" option for servers has been added.
85           Thanks to Florian Forster. #2593
86         * Intel RDT plugin: Support for groups of PIDs has been added. Thanks to
87           Wojciech Andralojc, Mateusz Starzyk, Michal Aleksinski. #2891
88         * IPMI plugin: Config options "SELSensor" and "SELIgnoreSelected" have
89           been added. Thanks to Mariusz Szafranski. #2796
90         * Modbus plugin: Support for 64 bit vals has been added, support for
91           CDAB endian 32-bit modbus polls has been added. Thanks to Anthony
92           Vickers, PJ Bostley. #2670, #2660
93         * Modbus plugin: The "Scale" and "Shift" metrics have been added. Thanks
94           to cekstam. #2729
95         * Netlink plugin: Handle new counter from Linux kernel version 4.6+.
96           Thanks to Pavel Rochnyak. #2767
97         * Network plugin: Option "BindAddress" has been added. Thanks to Ofir
98           Hermesh. #2831
99         * Ping plugin: An "AddressFamily" configuration option has been added.
100           Thanks to 依云 lilydjwg. #2961
101         * OVS Stats plugin: Extended metrics "ovs-dpdk" have been added. Thanks
102           to Matteo Croce, Ryan McCabe. #3000
103         * OVS Stats plugin: Support of bond interface and a "InterfaceStats"
104           config option have been added. Thanks to Andrew Bays. #2880
105         * PCIe Errors plugin: New plugin to read "PCIe" errors. Thanks to Kamil
106           Wiatrowski. #2733
107         * Processes plugin: Support for Linux Delay Accounting has been added.
108           Thanks to Florian Forster. #2598
109         * Redis plugin: Keyspace "hitratio" metric has been added, metric
110           "operations_per_second" has been removed, an option for connecting via
111           UNIX socket has been added. Thanks to Pavel Rochnyak. #2838, #2845,
112           #2904
113         * RouterOS plugin: Support for temperature and voltage data has been
114           added, use MAC-address when Radio-name is missing. Thanks to Pavel
115           Rochnyak. #2851, #2854
116         * RRDCacheD plugin: Time resolution has been improved to microseconds.
117           Thanks to Brian T. O'Neill. #3065
118         * Sensors plugin: Checks for upper limit of "SENSORS_API_VERSION" have
119           been removed, support for libsensors older than 3.0.0 has been
120           dropped. Thanks to Pavel Rochnyak. #3013, #3014
121         * SNMP plugin: New options "PluginInstance", "TypeInstance",
122           "TypeInstanceOID", "PluginInstanceOID", "FilterOID", "FilterValues"
123           and "FilterIgnoreSelected" have been added. Thanks to Pavel Rochnyak.
124           #2817, #2819
125         * SNMP Agent plugin: Multiple key indexes to snmp table and other new
126           features have been added, refactoring, coverity scan issues have been
127           fixed. Thanks to Marcin Mozejko. #2702, #2844
128         * Swap plugin: Support for Linux 2.4 has been dropped. Thanks to Pavel
129           Rochnyak. #2979
130         * Turbostat plugin: Configuration option "RestoreAffinityPolicy" has
131           been added. Thanks to Pablo Llopis. #2627
132         * Turbostat plugin: New metrics "P-states", "Turboboost", "Platform
133           TDP", "Uncore bus ratio" have been added. Thanks to Sexton Rory. #2806
134         * Turbostat plugin: Support of reporting GPU power on SKL has been
135           added. Thanks to Gordon Kelly. #2605
136         * virt plugin: Allow read "Hostname" from libvirt metadata. Thanks to
137           Mehdi ABAAKOUK. #2807
138         * virt plugin: Block info statistics for disk devices have been added.
139           Thanks to Radoslaw Jablonski. #2874
140         * Wireless plugin: A "bitrate" metric has been added. Thanks to Florian
141           Forster. #2950
142         * Write Graphite, Write Kafka plugins: Support for Graphite 1.1+ tag has
143           been added. Thanks to Dan Cech. #2631
144         * Write Prometheus plugin: Option "Host" has been added. Thanks to Pavel
145           Rochnyak. #2969
146         * Write Stackdriver plugin: New plugin to write to Google Stackdriver
147           Monitoring. Thanks to Florian Forster. #2472
148         * Write Syslog plugin: "write_syslog" plugin writes values lists as
149           syslog messages. Thanks to Shirly Radco. #3019
150         * Build System: A warning that pkgdatadir and pkglibdir were previously
151           defined has been fixed, additional plugins have been enabled,
152           GNULIB_DIR has been added to LDFLAGS in configure.ac on Windows.
153           Thanks to Sean Campbell. #2907, #2885, #2882
154         * Build System: Including "utils/mount/mount.h" has been fixed. Thanks
155           to Florian Forster. #3097
156         * Build System: The amount of output from ./configure has been reduced,
157           rendering of collectd-lua(5) manpage has been fixed, don't hide errors
158           when creating manpage. Thanks to Ruben Kerkhof. #3086, #3088, #3092
159         * collectd: A bug in "c_avl_iterator_prev" has been fixed. Thanks to
160           volth. #2917
161         * collectd: A stringop compiler warning has been fixed. Thanks to Ruben
162           Kerkhof, Juan Osorio Robles. #3021
163         * collectd: An invalid memory access in the "strjoin()" function has
164           been fixed. Thanks to Florian Forster. #3063
165         * collectd: collectd binary has been refactored. Thanks to Sean
166           Campbell, Sebastian Harl. #2745
167         * collectd: collectdmon cannot exit command line options parse loop has
168           been fixed. Thanks to takahashi-tsc. #2774
169         * collectd: Endianness checks for AIX have been added, gcc issue on Mac
170           byteorder has been fixed, fallback for endianness conversion has been
171           added. Thanks to Dagobert Michelsen. #2761, #2741, #2717
172         * collectd: Handle failure of simple config callbacks. Thanks to Ruben
173           Kerkhof. #3085
174         * collectd: Include "kstat.h" if available to provide "kstat_ctl_t",
175           include "kstat.h" when available. Thanks to Dagobert Michelsen. #2716,
176           #2711
177         * collectd: Parsing option for avoiding making BaseDir has been fixed.
178           Thanks to Mariusz Białończyk. #2856
179         * collectd: Remove empty "cmd_listval_t" data structure and related
180           no-op code. Thanks to Pavel Rochnyak. #2779
181         * collectd: src/daemon/plugin.c: Refactor plugin_load_file(),
182           src/utils_format_json.c: Remove chatty debug messages. Thanks to
183           Florian Forster. #2558, #2938
184         * collectd: Stop poisoning function in debug mode. Thanks to Ruben
185           Kerkhof. #2804
186         * collectd: The number of allocations when parsing types.db has been
187           reduced. Thanks to Ruben Kerkhof. #3091
188         * collectd: The organization of the source repository has been improved.
189           Thanks to Florian Forster. #2961
190         * collectd: Typos have been fixed. Thanks to Florian Forster, Jakub
191           Jankowski, William Pursell. #2944, #2692, #2643
192         * tree-wide: cleanup: cf_util_get* instead of local copy in plugins,
193           prefixed error reporting. Thanks to Pavel Rochnyak. #2833
194         * tree-wide: Some style issues have been fixed. Thanks to Ruben Kerkhof.
195           #3022
196         * tree-wide: "sstrerror()" has been replaced with "STRERRNO". Thanks to
197           Pavel Rochnyak. #2735
198         * AMQP1 plugin: Potential memory leaks found via scan-build have been
199           fixed, a typo in error log message has been fixed, cleanups. Thanks to
200           Andy Smith, Andrew Bays, Ruben Kerkhof. #2802, #2876, #2797
201         * Barometer plugin: Support to "libi2c-4.0" has been added. Thanks to
202           Pavel Rochnyak. #2783
203         * DBI, Oracle, PostgreSQL plugins: Fixes and improvements. Thanks to
204           Pavel Rochnyak. #1705
205         * Disk plugin: "HAVE_UDEV_H" has been changed to "HAVE_LIBUDEV_H".
206           Thanks to Dylan Stephano-Shachter. #2668
207         * Disk plugin: In linux, reset the disk when it disappears from
208           "/proc/diskstats". Thanks to Nikita Kozlov, Pavel Rochnyak. #2551
209         * DPDK Events, DPDK Stats plugins: Buffer size for parsing lcores has
210           been increased, a deprecation warning has been fixed, runtime config
211           file path has been fixed. Thanks to Kevin Laatz. #2722, #2840, #2924
212         * DPDK Stats plugin: A compilation issue has been fixed. Thanks to
213           Volodymyr Mytnyk. #2524
214         * GPS plugin: Build with gpsd version 3.18 has been fixed. Thanks to
215           Baruch Siach. #2947
216         * Intel RDT plugin: Compiler warnings have been fixed. Thanks to Ruben
217           Kerkhof. #3104
218         * Log Logstash plugin: Non-portable struct initialization with "{}" has
219           been fixed. Thanks to Florian Forster. #2988
220         * LUA plugin: A memory leak has been fixed. Thanks to Ruben Kerkhof.
221           #3090
222         * MySQL plugin: Properly cleanup dropped MySQL connections. Thanks to
223           Dhrupad Bhardwaj. #2704
224         * Netlink plugin: Truncation warnings have been fixed. Thanks to Ruben
225           Kerkhof. #2777
226         * NFS plugin: Message "Unexpected number of fields for NFSv4 server
227           statistics: 62" has been fixed. Thanks to Yedidyah Bar David. #2076
228         * NFS plugin: Number of fields for "NFSv4" has been fixed. Thanks to
229           Jan-Philipp Litza. #2915
230         * Notify Email plugin: All notification parameters have been included
231           into email. Thanks to Pavel Rochnyak. #2834
232         * NTPd plugin: Don't treat normal peers as refclocks, skip "0.0.0.0"
233           hosts in ntpd plugin. Thanks to Pavel Rochnyak, Ivan Kurnosov. #2822,
234           #2376
235         * OAuth plugin: src/utils_oauth.c: Renew OAuth tokens 30 seconds before
236           they expire. Thanks to Florian Forster. #2970
237         * OVS Stats plugin: A macro to populate counters list has been added,
238           value of "OpenFlow" has been corrected. Thanks to Matteo Croce. #2966,
239           #2963
240         * OVS Stats plugin: Code style, cleanup and improvements. Thanks to
241           Pavel Rochnyak. #3011, #3012
242         * OVS Stats, OVS Events plugins: utils_ovs: Avoid potential access of
243           freed memory, fixes. Thanks to Ciara Loftus, Mark Kavanagh. #2801,
244           #2731
245         * Processes plugin: Compilation has been fixed when ps_delay() is not
246           used. Thanks to Pavel Rochnyak. #2610
247         * Python plugin: A compilation warning with Python 3.7 has been fixed.
248           Thanks to Manoj Srivastava. #3042
249         * Redis plugin: Bugfixes, extended error reporting, persistent
250           connections and parallel polling, ability to select db for queries has
251           been fixed. Thanks to Pavel Rochnyak, skob. #2826, #2789
252         * Router OS plugin: Unset radio-name showing up as "(null)" has been
253           fixed. Thanks to melak. #2740
254         * RRDCacheD plugin: Cleanup rrdcached plugin a bit. Thanks to Pavel
255           Rochnyak. #3080
256         * RRDTool plugin: Error reporting has been extended. Thanks to Pavel
257           Rochnyak. #2825
258         * Sensors plugin: Support for humidity sensors has been added. Thanks to
259           Sarah Fischmann. #2913
260         * Sensu, OVS Stat, Turbostat, virt, OAuth, Write Prometheus, Intel RDT
261           plugins: Compiler warnings have been fixed. Thanks to Ruben Kerkhof.
262           #3093, #3098, #3099, #3100, #3102, #3103, #3104
263         * virt plugin: Code "do {} while(0)" around macro has been removed.
264           Thanks to Florian Forster. #2579
265         * virt plugin: Compiler warnings, a segfault in libvirt, typo in error
266           messages have been fixed. Thanks to Antoine Naud, Ruben Kerkhof, sarah
267           niuxu18. #2808, #2919, #2957
268         * virt plugin: Optional "virDomainGetCPUStats()" has been removed from
269           main flow, cleanup. Thanks to Pavel Rochnyak. #2972, #2978
270         * virt plugin: Tracking of VM state changes has been fixed. Thanks to
271           Radoslaw Jablonski. #2701
272         * Write MongoDB plugin: Plugin dependencies have been fixed. Thanks to
273           Pavel Rochnyak. #3010
274         * Write Prometheus plugin: A compilation issue on Mac OS X has been
275           fixed. Thanks to Florian Forster. #3059
276         * Write Redis plugin: Bug ""max_set_duration" deletes unexpected data"
277           has been fixed. Thanks to takahashi-tsc. #2773
278         * Write Stackdriver plugin: Potential NULL dereference and error
279           reporting have been fixed. Thanks to Florian Forster. #2960
280         * collectd.conf(5): a typo has been fixed, the tail plugin's
281           documentation has been improved. Thanks to Ruben Kerkhof, Florian
282           Forster. #3087, #2994
283         * collectd.conf.pod: virt: "Instances" option has been documented, a
284           clarifying example has been added. Thanks to Pavel Rochnyak, Fabien
285           Wernli. #2990, #2903
286         * collectd-python: "Import" configuration option has been documented.
287           Thanks to Tyler Harper. #2985
288         * collectd-snmp.pod: Document thread usage correctly. Thanks to Nathan
289           Ward. #3078
290         * CONTRIBUTING.md: Improve wording around ChangeLog; fix example,
291           document the new change log requirement / behavior. Thanks to Florian
292           Forster. #3061, #3054
293         * docs/review_comments.md: document with frequent review comments has
294           been started. Thanks to Florian Forster. #2964
295         * README: Include compiler defenses suggestion, do not point users to
296           non-existing file. Thanks to Kevin Laatz, Ruben Kerkhof. #2721, #2045
297
298 2018-10-23, Version 5.8.1
299         * collectd: Fix "BaseDir" option. Thanks to Mariusz Białończyk and
300           Pavel Rochnyak. #2857
301         * collectd: improve error handling, check return values. Thanks to
302           Florian Forster.
303         * Build System: use "kstat.h", when available. Thanks to Dagobert
304           Michelsen and Pavel Rochnyak. #2784
305         * Build System: Fix distcheck on MacOS. Thanks to Ruben Kerkhof.
306         * Build System: add missing include of ""collectd.h"" to fix builds on
307           Solaris. Thanks to Pavel Rochnyak.
308         * Build System: add endianess checks for AIX, fix GCC issue on Mac
309           byteorder, fix byteorder on Solaris, add fallback for endianess
310           conversion. Thanks to Dagobert Michelsen (multiple cherry picks from
311           master).
312         * Build System: Out-of-tree builds have been fixed. Thanks to Florian
313           Forster. #2602
314         * Configuration: Error handling in the config parsing code has been
315           improved. Thanks to Florian Forster.
316         * Documentation: Fix typo in collectd.conf(5). Thanks to Pavel Rochnyak.
317           #2760
318         * Documentation: update note on dpdkstat. Thanks to Maryam Tahhan. #2613
319         * Various plugins: Errors found by the static code analysis tool
320           Coverity were fixed. Thanks to Florian Forster. #2559, #2560, #2561,
321           #2562, #2563, #2565, #2568, #2575, #2579, #2580, #2588, #2589
322         * Ceph plugin: A segfault has been fixed. Thanks to Aleksei Zakharov and
323           Matthias Runge. #2572
324         * DF plugin: fix memory leak in error case. Thanks to Takahashi tsc.
325         * Exec plugin: check return value of "plugin_thread_create()". Thanks to
326           Florian Forster.
327         * Exec plugin: Handling of large groups has been fixed. Thanks to
328           Sridhar Mallem. #2696
329         * Exec plugin: Incorrect use of *putenv(3)* has been fixed. Thanks to
330           Daniel Vrátil.
331         * Exec plugin: A deadlock related to setting environment variables after
332           *fork()* has been fixed. Thanks to Daniel Vrátil.
333         * Intel PMU plugin: add core groups feature. Thanks to Kamil Wiatrowski.
334           #2681
335         * Intel PMU plugin: fix compatibility issue with collectd 5.8. Thanks to
336           Kamil Wiatrowski.
337         * Intel PMU plugin: fix possible "NULL" pointer dereference. Thanks to
338           Kamil Wiatrowski. #2676
339         * IPMI plugin: A segfault caused by a wrong data type has been fixed.
340           Thanks to Mariusz Szafrański. #2742
341         * IPMI plugin: The sensor configuration option has been fixed. Thanks to
342           Pavel Rochnyak. #2629
343         * memcached plugin: A deadlock situation has been fixed. Thanks to Pavel
344           Rochnyak. #2612
345         * NFS plugin: Support for NFSv4 has been fixed. Thanks to Jan-Philipp
346           Litza. #2076
347         * NTPd plugin: A memory leak in the error handling path has been fixed.
348           Thanks to Ruben Kerkhof. #2942
349         * OVS Stats plugin: A deadlock situation has been fixed. Thanks to
350           Volodymyr Mytnyk. #2590
351         * OVS Stats plugin: Fix reconnect after thread terminated. Thanks to
352           Volodymyr Mytnyk and Maram Tahhan. #2574
353         * Perl plugin: A compilation failure has been fixed. Thanks to Pavel
354           Rochnyak. #2732
355         * Perl plugin: Fix exporting notification meta data. Thanks to Florian
356           Forster.
357         * RRDtool plugin: Handling of very large "GAUGE" metrics has been fixed.
358           Thanks to Miroslav Lichvar. #2566
359         * Tail plugin: Several regressions have been fixed. Thanks to Pavel
360           Rochnyak. #2535, #2587, #2611
361         * turbostat plugin: A potential segfault due to an incorrect *free()*
362           has been fixed. Thanks to Ruben Kerkhof. #2948
363         * UUID plugin: Fix hostname setting. Thanks to Pavel Rochnyak. #2723
364         * virt plugin: A segfault during error handling has been fixed. Thanks
365           to Ruben Kerkhof. {{Issue|2919]}
366         * Write Kafka plugin: A build failure due to a deprecated API call has
367           been fixed. Thanks to Pavel Rochnyak. #2607, #2628, #2640
368         * Write Prometheus plugin: Fix "MHD_USE_INTERNAL_POLLING_THREAD" flag in
369           newer libmicrohttpd. Thanks to Pavel Rochnyak. #2849
370         * Write Prometheus plugin: set "SO_REUSEADDRESS" on listening socket.
371           Thanks to Pavel Rochnyak. #2570, #2673
372         * Write Syslog plugin: The new "write_syslog" plugin writes value
373           lists as syslog messages. Thanks to Shirly Radco. #3019
374
375 2017-11-17, Version 5.8.0
376         * collectd: The core daemon is now completely licensed under the MIT
377           license.
378         * collectd: Added daemon option to avoid making BaseDir. Thanks to
379           Nathaniel Wesley Filardo and Florian Forster. #2422
380         * collectd: Global variables have been moved to their own module to make
381           porting collectd easier. Thanks to Sean Campbell. #2467
382         * collectd as well as Apache, memcached, OpenLDAP, Perl, RouterOS, SNMP,
383           Tail-CSV plugins: Free userdata for "plugin_register_complex_read()".
384           Thanks to Pavel Rochnyack. #2349
385         * Collectd client library: Added parsing and server code. Thanks to
386           Florian Forster. #2258
387         * Build system: Dependency on libltdl has been removed, support for
388           libtool 1 has been dropped. Thanks to Ruben Kerkhof. #1898
389         * Build system: The build system has been switched to non-recursive
390           make. Thanks to Ruben Kerkhof. #2085
391         * APC UPS plugin: The plugin's configuration is now optional. Without a
392           "<Plugin />" block reasonable defaults will be used. Thanks to Pavel
393           Rochnyack. #2351
394         * Chrony plugin: Several issues found when working with a stratum-1
395           server have been fixed. Thanks to Miroslav Lichvar. #2190
396         * Ceph plugin: Support for the Ceph version "Luminous" has been added.
397           Thanks to Aleksei Zakharov. #2464
398         * CPU plugin : Linux-specific "guest" states have been added. Thanks to
399           Xavier G. #2439
400         * cURL plugin, cURL-JSON, cURL-XML, DBI, FileCount, memcachec, Oracle,
401           PostgreSQL, Table, Tail, Tail CSV plugins: The ability to configure
402           the "plugin" field of generated metrics has been added. Thanks to
403           Pavel Rochnyack. #1944, #1681, #1558
404         * cURL-JSON plugin: Parsing of arrays has been fixed. Thanks to Florian
405           Forster. #2281
406         * DPDKEvents plugin: This new plugin reports link status and keep alive
407           events. Thanks to Maryam Tahhan, Harry van Haaren, Serhiy Pshyk,
408           Kim-Marie Jones, Krzysztof Matczak, Przemyslaw Szczerbik, Christian
409           Ehrhardt and Luca Boccassi. #2157, #2348, #2400, #2405, #2417
410         * DPDKStat plugin: The plugin has been refactored to make DPDK related
411           utility functions reusable. Thanks to Krzysztof Matczak, Przemyslaw
412           Szczerbik, Christian Ehrhardt and Luca Boccassi. #2130, #2348, #2400,
413           #2405, #2417
414         * DPDKStat plugin: The "LogLevel" and "RteDriverLibPath" config options
415           have been added. Thanks to Jiri Prokes. #2505
416         * Email plugin as well as Exec and Unixsock plugins: Use
417           "_SC_GETPW_R_SIZE_MAX". Thanks to Florian Forster. #2451
418         * FileCount plugin: Custom values for reported plugin, type and type
419           instance. Thanks to Pavel Rochnyack. #1979
420         * GenericJMX plugin: Support for "AtomicInteger" and "AtomicLong" has
421           been added. Thanks to Pierre Mauduit. #2158
422         * gRPC plugin: Support for meta data has been added. Thanks to Taylor
423           Cramer. #2378
424         * IPC plugin: Fixed failed compilation on AIX. Thanks to Pavel
425           Rochnyack. #2357
426         * Intel PMU plugin: This new plugin collects CPU performance metrics
427           using Intel's Performance Monitoring Unit (PMU). Scaling information
428           added to metadata. Thanks to Serhiy Pshyk and Roman Korynkevych.
429           #2276, #2398, #2374
430         * Intel RDT plugin: Support for collectd's logging infrastructure has
431           been added. PQoS monitoring groups are being reset on start-up to fix
432           potential previous unclean shutdowns. Thanks to Roman Korynkevych.
433           #2089.
434         * IPMI plugin: Support for System Event Log (SEL) has been added. Thanks
435           to Roman Korynkevych. #2091
436         * IPMI plugin: Support for remote IPMI controllers has been added.
437           Thanks to Pavel Rochnyack. #2024
438         * LVM plugin: A check for the "CAP_SYS_ADMIN" capability has been added.
439           This will give users an informative warning when the process is not
440           running with the required privileges for this plugin. Thanks to
441           Florian Forster. #2426, #2499
442         * mcelog plugin: This new plugin subscribes to Machine Check Exceptions
443           (MCE) and dispatches notifications. Metadata reset. Thanks to Maryam
444           Tahhan, Volodymyr Mytnyk, Taras Chornyi, Krzysztof Matczak and Roman
445           Korynkevych. #2003, #2246, #2380
446         * MQTT plugin: Add support for TLS in "Subscriber" blocks. Thanks to
447           Florian Forster. #2434
448         * memcached plugin: Persistent connections have been implemented. Fix
449           hit ratio reporting, add connections rate report. Thanks to Pavel
450           Rochnyack. #2388, #2385
451         * memcached plugin: The type of the "listen_disabled" metric has been
452           changed to "total_events". Thanks to Florian Forster. #2386, #2468
453         * Netlink plugin: The dropped packets metric has been added. Thanks to
454           Denys Fedoryshchenko. #2053
455         * NFS plugin: Support for NFS 4.2 metrics has been added. Thanks to
456           Marek Becka. #2369
457         * NFS plugin: Config options to ignore specified NFS versions have been
458           added. Thanks to Christian Bartolomäus. #2430
459         * NUT plugin: The "ConnectTimeout", "ForceSSL", "VerifyPeer" and
460           "CAPath" options have been added. Thanks to Pavel Rochnyack and Steven
461           Bell. #2145, #2354
462         * OpenLDAP plugin: A segfault after a connection failure has been fixed.
463           Thanks to Pavel Rochnyack. #2377
464         * Openvpn plugin: Added support for status files from latest OpenVPN-2.4
465           and possible from future versions. Thanks to Pavel Rochnyack. #2352
466         * OVS Events plugin: This new plugin reports link state changes from
467           Open vSwitch (OVS). Thanks to Volodymyr Mytnyk. #1971
468         * OVS Stats plugin: This new plugin reports bridge / interface
469           statistics from Open vSwitch (OVS). Thanks to Volodymyr Mytnyk and
470           Taras Chornyi. #2137
471         * Perl plugin: Bugfix, added check of proper interpreter initialization.
472           Thanks to Pavel Rochnyack. #2391
473         * PostgreSQL plugin: The plugin now sets the "application_name"
474           parameter when connecting to the database. Thanks to daniacs. #2497
475         * Processes plugin: The I/O operations reported for selected processes
476           has been fixed. The metric "ps_disk_octets" has been renamed to
477           "io_octets" because it actually contains the number of I/O operation
478           by the process, not just disk related I/O. Same for "io_ops"
479           (previously "ps_disk_ops"). The new metric "disk_octets" has been
480           added and is reporting disk I/O only. Add option to collect the count
481           of active memory maps for Linux processes. The "CollectFileDescriptor"
482           and "CollectContextSwitch" options have been added. Thanks to Pavel
483           Rochnyack and to Wilfried Goesgens. #2232, #2454, #1989
484         * Processes and TCPConns plugins: The OpenBSD implementation has been
485           changed to use "kvm_openfiles" with "KVM_NO_FILES". Thanks to Jeremie
486           Courreges-Anglas. #2061
487         * Python plugin: Extend Notification class to include metadata. Thanks
488           to Volodymyr Mytnyk. #2135
489         * Python plugin: The "CollectdException" class has been added. This
490           allows to throw an exception without a stack trace being logged.
491           Thanks to Sven Trenkel. #2330, #2346
492         * Sensors plugin: Support for (electrical) current has been added.
493           Thanks to Clemens Gruber. #2255
494         * SNMP plugin: Error handling has been improved: a potential double-free
495           is now avoided (potentially leaking memory) and handling of
496           non-failing subtrees has been fixed. Thanks to Pavel Rochnyack. #2449
497         * SNMP plugin: The "Timeout" and "Retries" config options have been
498           added. Thanks to Carlos Vicente. #1472, #2488
499         * SNMP Agent plugin: This new plugin implements an SNMP AgentX subagent
500           that receives and handles queries from SNMP master agent and returns
501           configured metrics. Thanks to Roman Korynkevych, Serhiy Pshyk and
502           Pavel Rochnyack. #2105, #2362
503         * Synproxy plugin: This new plugin provides statistics for Linux
504           SYNPROXY. Thanks to Marek Bečka. #2381
505         * Tail plugin: Allow the calculation of several distributions in one
506           "tail" instance through a "bucket" type. Thanks to Pavel Rochnyack.
507           #2442
508         * Turbostat plugin: Import "msr-index.h" header from Linux and better
509           support for mutliple packages. Thanks to Vincent Brillault. #2445,
510           #2446
511         * Uptime plugin: Changed implementation to read from "/proc/uptime"
512           instead of "/proc/stat". Update for Linux and AIX, uptime is read
513           directly using a system call. Update for BSD and Solaris, uptime is
514           calculated by subtracting boot time from current time. Thanks to Ivan
515           Kurnosov and Marcin Jurkowski. #2431, #2034
516         * UUID plugin: Support for libhal has been removed. Thanks to Ruben
517           Kerkhof. #2080
518         * Varnish plugin: Extended the varnish plugin with varnish-plus
519           counters. Fixed invalid data source type. Thanks to Denes Matetelki.
520           #2453, #2463
521         * virt plugin: The plugin has been updated to use
522           "virConnectListAllDomains()". Thanks to Denis Silakov. #2051
523         * virt plugin: Support for domain tags has been added. Thanks to
524           Francesco Romani. #2048
525         * virt plugin: Connection handling has been improved. Thanks to
526           Francesco Romani. #2100, #2101
527         * virt plugin: Many metrics have been added, including disk, hypervisor
528           CPU usage, performance monitoring events, domain state, CPU pinning
529           (affinity), file system, and job statistics. Thanks to Francesco
530           Romani and Przemyslaw Szczerbik. #2103, #2175, #2168
531         * Write Graphite plugin: Additional tests have been added. Thanks to
532           Florian Forster.
533         * Write HTTP plugin: The "Attribute" and "TTL" options for the KairosDB
534           format have been added. Implementation of "Prefix" option. Thanks to
535           jaroug, Denis Pompilio and Pavel Rochnyack. #2199, #2252, #2482
536         * Write MongoDB plugin: Memory leaks have been fixed. Thanks to
537           Saikrishna Arcot. #2307
538         * Write Prometheus plugin: Label values are now properly escaped. Thanks
539           to Florian Forster. #2035
540         * Write Redis plugin: Add "max_set_duration" to set duration for value.
541           Thanks to Tomofumi Hayashi. #2440
542         * Write Riemann plugin: Export times with microsecond resolution. Thanks
543           to mcorbin. #2315
544         * Write TSDB plugin: The options "ResolveInterval" and "ResolveJitter"
545           have been added to control DNS lookup behavior. This prevents DNS
546           flooding in case TSDB is not available. Thanks to Yves Mettier and
547           Florian Forster. #2059
548         * ZFS ARC plugin: Header lines are now ignored in the Linux
549           implementation. Thanks to YmrDtnJu. #2097
550
551 2017-06-06, Version 5.7.2
552         * Build system: The Notify Email plugin is no longer linked with
553           indirect dependencies. Thanks to Marc Fournier.
554         * collectd: A race condition when calculating a metric's rate has been
555           fixed. Thanks to Florian Forster. #1193
556         * AMQP, Exec, UnixSock, Write Kafka plugins: Parsing of the PUTVAL
557           command with multiple values has been fixed. Thanks to Florian
558           Forster. #2274
559         * AMQP plugin: The "ExchangeType" option is now also valid for
560           publishers. Thanks to Florian Forster. #2286
561         * BIND plugin: Fix parsing of the sample time provided by BIND.
562           Previously, the time was assumed to be in the local timezone when in
563           fact it was in UTC. Thanks to Ed Ravin. #1268
564         * BIND plugin: Memory leaks have been fixed. Thanks to Ruben Kerkhof.
565           #2303
566         * cURL-JSON plugin: Handling of arrays has been fixed. Thanks to Florian
567           Forster. #2266
568         * DPDKStat plugin: Error handling during initialization has been
569           improved. Thanks to Ruben Kerkhof.
570         * DPDKStat plugin: Handling of a number of metrics has been improved,
571           for example "rx_q0bytes". Thanks to Przemyslaw Szczerbik. #2167
572         * Intel RDT plugin: Configuration handling has been changed to be more
573           graceful. Thanks to Maryam Tahhan. #2165
574         * Log Logstash plugin: If writing the log entry fails, print it to
575           "STDERR" instead. Thanks to Marc Fournier.
576         * LogFile plugin: If writing to the file fails, print log messages on
577           "STDERR" instead. Thanks to Marc Fournier.
578         * memcachec, Tail plugins: A resource leak in the matching
579           infrastructure has been fixed. Thanks to Krzysztof Matczak. #2192
580         * MQTT plugin: Invalid symbols in topic names are now replaced and a
581           resource leak has been fixed. Thanks to Denys Fedoryshchenko. #2123
582         * Network plugin: A potential endless-loop has been fixed. This can be
583           triggered remotely by sending a signed network packet to a server
584           which is not set up to check signatures. Thanks to Marcin Kozlowski
585           and Pavel Rochnyack. #2174, #2233, CVE-2017-7401
586         * Perl plugin: A potential double-free has been fixed. Thanks to Florian
587           Forster. #2278
588         * Processes plugin: A compilation error on AIX has been fixed. Thanks to
589           Pavel Rochnyack. #2210
590         * SMART plugin: A check for the "CAP_SYS_RAWIO" capability has been
591           added. Thanks to Marc Fournier.
592         * Write Graphite plugin: Error handling in the case that calculating a
593           metric's rate fails has been improved. Previously, the raw counter
594           values were sent to Graphite. Thanks to Iain Buclaw. #2209
595         * Write Prometheus plugin: An incorrect use of "realloc(3)" has been
596           fixed. Thanks to Florian Forster. #2275
597
598 2017-01-23, Version 5.7.1
599         * collectd: Handling of boolean configuration options has been unified.
600           Thanks to Sebastian Harl. #2083, #2098
601         * collectd: Reporting of internal statistics has been fixed. Thanks to
602           Florian Forster. #2108
603         * collectd, various plugins: Bugs and issues reported by scan-build and
604           coverity-scan have been fixed. Thanks to Ruben Kerkhof and Florian
605           Forster.
606         * Build system: Parallel build have been fixed. Thanks to Ruben Kerkhof.
607           #2110
608         * DPDKStat plugin: Portability issues and a double-close bug have been
609           fixed. Thanks to Ruben Kerkhof and Marc Fournier.
610         * Intel RDT plugin: A check for the libpqos library version has been
611           added. Thanks to Serhiy Pshyk.
612         * NetApp plugin: Compilation problems have been corrected. Thanks to
613           Florian Forster. #2120
614         * Write Prometheus plugin: A memory leak has been fixed. Thanks to Ruben
615           Kerkhof.
616
617 2016-12-12, Version 5.7.0
618         * Documentation: The Turbostat plugin section has been improved. Thanks
619           to Florian Forster
620         * Documentation: The semantics of the "TypesDB" option have been
621           improved. Thanks to Florian Forster.
622         * collectd: A generic interface for parsing the text protocol has been
623           added. Thanks to Sebastian Harl. #1749
624         * collectd: Threads now get named, making them easier to track using
625           tools such as top, ps, etc. Thanks to Manuel Luis Sanmartín Rozada
626           and Marc Fournier. #547
627         * AMQP plugin, Write Graphite plugin, Write Kafka plugin: The new
628           "[Graphite]PreserveSeparator" option allows retaining the default dot
629           separator rather than escaping it. Thanks to Florian Forster. #419
630         * Battery plugin: A StateFS backend for gathering statistics has been
631           added. Thanks to Rinigus. #1795
632         * CPU plugin: CPU aggregation on AIX was fixed. Thanks to Chao Yang.
633           #1957
634         * Collectd::Unixsock: Fractional seconds support has been made more
635           robust. Thanks to Matthias Bethke. #2052
636         * DPDKStat plugin: This new plugin collects DPDK interface statistics.
637           Thanks to Maryam Tahhan, Harry van Haaren, Taras Chornyi and Kim
638           Jones. #1649
639         * gRPC plugin: The "DispatchValues" option has been renamed to
640           "PutValues". Thanks to Florian Forster.
641         * HDDTemp plugin: The 32 devices limit has been removed. Thanks to
642           Benjamin Gilbert. #631
643         * Hugepages plugin: This new plugin reports the number of used and free
644           hugepages on Linux. Thanks to Jaroslav Safka, Maryam Tahhan, Kim Jones
645           and Florian Forster. #1799
646         * Intel RDT plugin: This new plugin collects statistics exposed by
647           Intel's Resource Director Technology . Thanks to SerhiyX. #1970
648         * memcached plugin: The new "Address" option allows connecting to a
649           different server than specified by the "Host" option. Thanks to Pavel
650           Rochnyack. #1975
651         * nginx plugin: Support for reporting failed connections has been added.
652           Thanks to Pavel Rochnyack. #1609
653         * Perl plugin: Significant internal reworking has been made. The new
654           "RegisterLegacyFlush" option has been added. Thanks to Pavel
655           Rochnyack. #1731
656         * PostgreSQL plugin: Timestamps are now RFC 3339-formatted local time.
657           Thanks to Igor Peshansky and Dave Cunningham. #1918
658         * Processes plugin: Internal performance improvements have been made.
659           Thanks to Pavel Rochnyack. #1980, #1981
660         * RRDCacheD plugin: The plugin now tries to reconnect upon failed
661           operations. Thanks to Sebastian Harl. #1959
662         * SpamAssassin: The plugin can now run in Perl's "tainted mode" ("-T").
663           Thanks to Akos Vandra. #1962
664         * Tail plugin: Support for calculating latency distribution of matching
665           values has been added. Thanks to Pavel Rochnyack and Florian Forster.
666           #1700
667         * Tail plugin: The new "GaugePersist" option has been added. Thanks to
668           Florian Forster. #2015
669         * Target:Set, Target:Replace, Match:RegEx: MetaData support has been
670           added . Thanks to Igor Peshansky. #1922, #1923, #1930
671         * turbostat plugin: The new "LogicalCoreNames" option allows switching
672           to per-core naming rather than per-CPU. Thanks to Brock Johnson. #2056
673         * virt plugin: The new "BlockDeviceFormat" and
674           "BlockDeviceFormatBasename" options help controlling the names
675           reported for block-device metrics. Thanks to Deyan Chepishev. #2004
676         * Write Graphite plugin: A new "DropDuplicateFields" option has been
677           added. Thanks to Michael Leinartas. #1915
678         * Write Kafka plugin: The "Key Random" setting has been reintroduced.
679           Thanks to Florian Forster. #1977
680         * Write Log plugin: Support for formatting output in JSON has been
681           added, using the new "Format" configuration option. Thanks to Igor
682           Peshansky. #1924
683         * Write Prometheus plugin: This new plugin publishes values using an
684           embedded HTTP server, in a format compatible with Prometheus'
685           collectd_exporter. Thanks to Florian Forster. #1967
686
687 2017-10-06, Version 5.6.3
688         * collectd: support for boolean string config values has been
689           reintroduced. Thanks to Sebastian Harl. #2083, #2098
690         * collectd: The capability checking has been changed to use
691           "cap_get_proc()". Thanks to Marc Fournier. #2151
692         * Documentation: A section documenting ignore lists has been added to
693           collectd.conf(5). Thanks to Florian Forster.
694         * AMQP plugin: The "ExchangeType" option is now also valid for
695           publishers. Thanks to Florian Forster. #2286
696         * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx, Write HTTP
697           plugins: Handling of URLs that redirect elsewhere has been fixed.
698           Thanks to Pavel Rochnyack. #2328
699         * BIND plugin: Fix parsing of the sample time provided by BIND.
700           Previously, the time was assumed to be in the local time zone when in
701           fact it was in UTC. Thanks to Ed Ravin. #1268
702         * BIND plugin: Memory leaks have been fixed. Thanks to Ruben Kerkhof.
703           #2303
704         * Chrony plugin: Build flags have been fixed. Thanks to Thomas Jost and
705           Marc Fournier. #2133
706         * cURL-JSON plugin: The timeout value has been changed to default to the
707           collection interval. This fixes a regression. Thanks to Marc Fournier.
708         * cURL-JSON plugin: Handling of arrays has been fixed. Thanks to Florian
709           Forster. #2266
710         * DBI plugin: Memory leaks at shutdown have been fixes. Thanks to Pavel
711           Rochnyack and Florian Forster.
712         * E-Mail, Exec, UnixSock plugins: Group ID lookup on systems with many
713           groups has been fixed. Thanks to Ruben Kerkhof and Florian Forster.
714           #2208
715         * IPC plugin: A compilation error on AIX has been fixed. Thanks to Pavel
716           Rochnyack. #2305
717         * LogFile plugin: If writing to the file fails, print log messages on
718           "STDERR" instead. Thanks to Marc Fournier.
719         * Log Logstash plugin: If writing the log entry fails, print it to
720           "STDERR" instead. Thanks to Marc Fournier.
721         * memcachec, Tail plugins: A resource leak in the matching
722           infrastructure has been fixed. Thanks to Krzysztof Matczak. #2192
723         * MQTT plugin: Invalid symbols in topic names are now replaced and a
724           resource leak has been fixed. Thanks to Denys Fedoryshchenko. #2123
725         * Network plugin: A potential endless-loop has been fixed. This can be
726           triggered remotely by sending a signed network packet to a server
727           which is not set up to check signatures. Thanks to Marcin Kozlowski
728           and Pavel Rochnyack. #2174, #2233, CVE-2017-7401
729         * Network plugin: A use-after-free has been fixed. Thanks to Pavel
730           Rochnyack. #2375
731         * Notify Email plugin: The plugin is no longer explicitly linked against
732           libssl and libcrypto, relies on libesmtp being linked correctly.
733           Thanks to Marc Fournier. Debian#852924
734         * NTPd plugin: Calculation of loop offset and error has been fixed.
735           Thanks to Neil Wilson. #2188
736         * OpenLDAP plugin: An incorrect use of the ldap library, leading to a
737           crash, has been fixed. Thanks to Marc Fournier. #2331
738         * Perl plugin: A potential double-free has been fixed. Thanks to Florian
739           Forster. #2278
740         * Perl plugin: Print an error when an incorrect configuration is
741           encountered. Thanks to Pavel Rochnyack. #927
742         * RRDtool plugin: Incorrect handling of the flushes timeout option has
743           been fixed. Handling of the "RandomTimeout" has been fixed. Thanks to
744           Pavel Rochnyack. #2363
745         * SMART plugin: Some warning messages have been removed and the code has
746           been cleaned up. Thanks to Florian Forster. #2062
747         * SMART plugin: A check for the "CAP_SYS_RAWIO" capability has been
748           added. Thanks to Marc Fournier.
749         * SNMP plugin: A double free has been fixed. Thanks to Pavel Rochnyack.
750           #2291
751         * Write Graphite plugin: Error handling in the case that calculating a
752           metric's rate fails has been improved. Previously, the raw counter
753           values were sent to Graphite. Thanks to Iain Buclaw. #2209
754         * Write Kafka plugin: A 32 bit random number is now used when formatting
755           a random key. Thanks to Florian Forster. #2074
756
757
758 2016-11-30, Version 5.6.2
759         * collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT" is not
760           available on AIX. Thanks to Chao Yang.
761         * collectd: The capability checking has been rewritten to be more
762           portable. Thanks to Florian Forster. #2009
763         * collectd.conf(5): Various typos have been fixed. Thanks to Marc
764           Fournier.
765         * collectd-tg: Incorrect usage of "nanosleep()" has been fixed which
766           caused the tool to sleep (almost) indefinitely. Thanks to Florian
767           Forster.
768         * Build system: Detection of the Java environment has been made
769           deterministic to allow for reproducible builds. Thanks to Marc
770           Fournier. #1523
771         * Build system: Detection of the Lua headers has been improved. Thanks
772           to Ruben Kerkhof.
773         * APC UPS plugin: Unavailable metrics are now skipped instead of
774           reported as 0 (zero). Thanks to Florian Forster. #2025
775         * Modbus plugin: Build issues on FreeBSD have been fixed. Thanks to
776           Florian Forster.
777         * OpenVPN plugin: Gracefully handle empty configurations. Thanks to
778           Pavel Rochnyack. #1932
779         * PowerDNS plugin: The "recursor command" has been fixed so PowerDNS can
780           correctly parse all requested fields. Thanks to Ruben Kerkhof.
781         * Write Graphite and AMQP plugins: A bug that could lead to a missing
782           null-termination has been fixed. Thanks to Markus Linnala.
783         * Write HTTP plugin: A logic error when checking the correctness of the
784           data set has been fixed. Thanks to Pavel Rochnyack. #1996
785         * Write Kafka plugin: The "Key Random" config option has been fixed.
786           Thanks to Florian Forster. #1977
787         * Write Kafka plugin: Support for librdkafka 0.9.0 has been added.
788           Thanks to Florian Forster.
789         * Write Riemann plugin: Build issues on Solaris have been fixed. Thanks
790           to Florian Forster.
791         * ZFS ARC plugin: A duplicate metric has been removed. Thanks to Ruben
792           Kerkhof. #1963
793
794 2016-10-07, Version 5.6.1
795         * Build system: Unnecessary linking of the Write Graphite plugin with
796           libyajl has been removed. Thanks to Marc Fournier.
797           Debian#839771, #1976
798         * collectd: A bug in the "FlushInterval" option that caused a
799           segmentation fault in the Write HTTP plugin has been fixed. Thanks to
800           Florian Forster. #1954
801         * Apache plugin: A syntax error has been fixed. Thanks to Florian
802           Forster.
803         * cURL-JSON plugin: A segmentation fault that occurred when handling
804           JSON with unexpected structure has been fixed. Thanks to Florian
805           Forster. #1896
806         * PostgreSQL plugin: Handling of "NULL" values in the "query_plans" and
807           "query_plans_by_table" queries has been fixed. Thanks to Bernd
808           Zeimetz. #1905
809         * RRDCacheD plugin: Reconnection behavior has been added. Thanks to
810           Sebastian Harl. Debian#657877
811         * VServer plugin: Use of a deprecated API ("readdir_r()") has been
812           fixed. Thanks to Sebastian Harl.
813         * Write Graphite plugin: Make default values configurable at compile
814           time again. Thanks to Florian Forster. #1953
815         * Write HTTP plugin: A bug has been fixed that lead to flush callbacks
816           being registered twice. Thanks to Florian Forster. #1955
817
818 2016-09-11, Version 5.6.0
819         * Build system: An option to to avoid building the DF plugin against XFS
820           has been added. Thanks to Ruben Kerkhof. #1878
821         * Build system: Autoconf ≥ 2.60, a C99-capable compiler and pkg-config
822           are now required. Thanks to Ruben Kerkhof.
823         * Build system: Building with "-Werror" is now optional. Thanks to Ruben
824           Kerkhof. #1222
825         * Build system: Many compilation issues on non-Linux platforms have been
826           fixed, leading to wider plugin support. Thanks to Ruben Kerkhof,
827           Dagobert Michelsen, Havard Eidnes and Robert Viduya.
828         * Build system: The configuration summary now also ends up in
829           config.log. Thanks to Sebastian Harl.
830         * collectd: All command-line options now override global options from
831           the config file. Thanks to Sebastian Harl. #366
832         * collectd: A number of unit tests for commonly used functions have been
833           added. Thanks to Florian Forster.
834         * collectd: Plugins start up and read timeouts are now logged. Thanks to
835           Marc Fournier. #1293, #1254
836         * collectd: Support for a timeout has been added to "FLUSH" callbacks.
837           Thanks to Manuel Luis Sanmartín Rozada.
838         * collectd: The "-T" command line switch now reports more errors. Thanks
839           to Corey Kosak. #1642
840         * collectd: The max size of value list elements ("DATA_MAX_NAME_LEN")
841           has been doubled and is now configurable at build time. Thanks to Amy
842           Lin, Florian Forster and Radu Brumariu. #1120
843         * Set target: The "MetaData" option has been added. Thanks to Yves
844           Mettier and Kevin Bowling. #1106, #1656, #1913
845         * AMQP, Write_HTTP, Write_Kafka plugins: Support for libyajl < 2 has
846           been added. Thanks to Florian Forster.
847         * APC UPS plugin: Parsing of end markers has been fixed. Thanks to
848           Florian Forster #617
849         * APC UPS plugin: The "PersistentConnection" option has been added.
850           Thanks to Florian Forster #617
851         * ceph, DNS, Exec, IPTables, Ping, turbostat plugins: When running
852           unprivileged, these plugins will now warn about insuffiscient
853           permissions or capabilities(7). Thanks to Marc Fournier. #1530
854         * Chrony plugin: This new plugin collects NTP data from the chrony NTP
855           server. Thanks to Claudius Zingerli. #1548
856         * cpusleep plugin: This new plugin measures time spent by CPU in deep
857           sleep mode. Thanks to Rinigus. #1826
858         * CPU plugin: The "ReportNumCpu" option has been added. Thanks to Fabien
859           Wernli.
860         * cURL, cURL-JSON, cURL-XML plugins: The new "Statistics" reports
861           various per-HTTP connection timers. Thanks to Sebastian Harl. #1004
862         * DBI plugin: The "Interval" option has been added to "Database" blocks.
863           Thanks to Michal Bebjak.
864         * Disk plugin: Support for FreeBSD has been added. Thanks to Xin Li,
865           Brad Davis, Ruben Kerfhof and Kevin Bowling.
866         * Empty Counter match: Support for derives has been implemented. Thanks
867           to Florian Forster. #1813
868         * GenericJMX plugin: Support for TabularData and the "PluginName" option
869           have been added. Thanks to David Crane. #1290, #1291
870         * GPS plugin: This new plugin reports the number of sattelites seen by
871           and precision of a GPS receiver. Thanks to Nicolas Jourden. #1346
872         * gRPC plugin: This new client and server plugin allows sending and
873           receiving metrics using the gRPC protocol. Comparable to the UnixSock
874           plugin, but using TCP and TLS. Thanks to Sebastian Harl and Florian
875           Forster.
876         * Interface plugin: Reporting dropped packets has been added. Thanks to
877           Marc Falzon. #1555
878         * Interface plugin: The "ReportInactive" has been added, letting users
879           skip inactive network interfaces. Thanks to Rinigus. #1791
880         * Interface plugin: The new, Solaris-only "UniqueName" option has been
881           added. Thanks to Yoga Ramalingam. #1416
882         * Lua plugin: This new language binding allows writing plugins using the
883           Lua programming language. Thanks to Julien Ammous, Florian Forster and
884           Ruben Kerkhof.
885         * Memory plugin: Reporting of ARC memory on Solaris has been added.
886           Thanks to Brian ONeill.
887         * MQTT plugin: This new plugin sends metrics to and/or receives metrics
888           from an MQTT broker. Thanks to Marc Falzon, Jan-Piet Mens, Nicholas
889           Humfrey and Florian Forster. #805, #1124
890         * MySQL plugin: Connection to the database server can now be done over
891           SSL. Thanks to Brian Lalor. #1256
892         * MySQL plugin: Monitoring slow queries has been added. Thanks to skob.
893           #1773
894         * MySQL plugin: mysql_bpool_pages-flushed has been renamed to
895           mysql_bpool_counters-pages_flushed because the value is cumulative.
896           Thanks to Marek Becka.
897         * MySQL plugin: Support for Galera statistics has been added. Thanks to
898           Rachid Zarouali. #1849
899         * MySQL plugin: Support for InnoDB metrics was improved. Thanks to Aman
900           Gupta. #1111
901         * MySQL plugin: The "mysql_sort" type has been split into 3 different
902           types. Thanks to Pavel Rochnyack. #1592
903         * Network plugin: Decryption error logging has been improved. Thanks to
904           Pavel Rochnyack. #1735
905         * Notify Nagios plugin: This new plugin sends notifications to Nagios as
906           a passive check result. Thanks to Florian Forster.
907         * NTPd plugin: The plugin now detects if the ntp daemon reports
908           nanoseconds instead of microseconds. Thanks to Matwey V. Kornilov.
909           #1783
910         * OpenLDAP plugin: Several connection-related improvements have been
911           made. Thanks to Marc Fournier. #1308
912         * OpenLDAP plugin: Support for "simple authentication" has been added.
913           Thanks to Marek Becka. #1087
914         * Ping plugin: The "Size" option has been added, allowing the ICMP data
915           payload size to be configured. Thanks to Witold Baryluk. #1395
916         * PostgreSQL, DBI, Oracle plugins: The new "PluginInstanceFrom" option
917           has been added. Thanks to Pavel Rochnyack. #1707
918         * PowerDNS plugin: The recursor metrics have been updated to 3.7.3 and
919           missing rr types have been added. Thanks to Ruben Kerkhof.
920         * Processes plugin: Counting of context switches was added for Linux.
921           Thanks to Manuel Luis Sanmartín Rozada. #1036
922         * Processes plugin: Improve reliability of thread counts on Linux.
923           Thanks to Manuel Luis Sanmartín Rozada.
924         * Python plugin: Minimal Python version requirement has been bumped to
925           2.6. Thanks to Ruben Kerkhof. #1864
926         * Redis plugin: Several additional metrics are now collected. Thanks to
927           Marc Falzon and Matteo Contrini. #1807, #1483
928         * Sensors plugin: The "UseLabels" option has been added. Thanks to
929           Christian Fetzer.
930         * SMART plugin: The new "IgnoreSleepMode" option has been added. Thanks
931           to Scott Talbert. #1770
932         * SMART plugin: The new "UseSerial" option allows identifying devices in
933           a stable way. Thanks to Scott Talbert. #1794
934         * SNMP plugin: The "IpAddress" can now be used for instances. Thanks to
935           Vincent Bernat. #1397
936         * StatsD plugin: Latency calculation histogram is now able to shrink
937           automatically to optimal size. Thanks to Pavel Rochnyack. #1622
938         * StatsD plugin: The "CounterSum" option has been added. Thanks to
939           Florian Forster. #929, #1282, #1311
940         * UUID plugin: The plugin now also looks in in smbios system table and
941           "/sys/class/dmi". Thanks to Ruben Kerkhof. #1490
942         * virt plugin: The "PluginInstanceFormat" option has been added. Thanks
943           to Ruben Kerkhof. #1100
944         * Write Graphite plugin: The "ReconnectInterval" option has been added.
945           Thanks to Toni Moreno and Florian Forster.
946         * Write HTTP plugin: A KairosDB formatter has been added. Thanks to
947           Aurélien Rougemont. #1809
948         * Write HTTP plugin: Notifications are now handled by this plugin.
949           Thanks to Florian Forster.
950         * Write HTTP plugin: The "LogHttpError" option has been added. Thanks to
951           vzubko.
952         * Write HTTP plugin: The new "Headers" option allows setting custom HTTP
953           headers in outgoing requests. Thanks to Brandon Arp. #1634
954         * Write Kafka plugin: Key handling has been made more comprehensive and
955           reliable. Thanks to Florian Forster, Pierre-Yves Ritschard and Vincent
956           Bernat. #1765, #1695, #1393
957         * Write Redis plugin: The "Database", "MaxSetSize", "Prefix" and
958           "StoreRates" options have been added. Thanks to Brian Kelly and
959           Sebastian Pfahl.
960         * Write Riemann plugin: The new "BatchFlushTimeout" and "Timeout" option
961           have been added. Thanks to Pierre-Yves Ritschard and Gergely Nagy.
962         * Write Riemann plugin: This plugin now requires the riemann-c-client
963           library, version 1.6.0+. This adds support for submitting values to
964           Riemann over TLS. Thanks to Gergely Nagy. #986
965         * Write TSDB, Write Sensu, Write Riemann, Write Graphite, Write TSDB
966           plugin: TCP keepalive is now enabled, helping graceful recovery from
967           unclean network disconnections. Thanks to Marc Fournier. #1549
968         * XenCPU plugin: This new plugin collects XEN Hypervisor CPU stats.
969           Thanks to Pavel Rochnyack. #1608
970         * ZFS ARC plugin: Several new statistics have been added and a couple of
971           obsolete ones removed. Thanks to Brad Davis, Brian ONeill and Ruben
972           Kerkhof.
973         * Zone plugin: This new plugin reads per-zone CPU usage on Solaris.
974           Thanks to Mathijs Mohlmann and Dagobert Michelsen.
975
976 2016-11-28, Version 5.5.3
977         * collectd: Write threads are stopped before shutdown callbacks are
978           called. Thanks to Florian Forster. #1110
979         * collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT" is not
980           available on AIX. Thanks to Chao Yang.
981         * libcollectdclient: Lines printed to "STDERR" are now guarded by the
982           environment variable "COLLECTD_TRACE". Thanks to Florian Forster. #105
983         * collectd.conf(5): Various typos have been fixed. Thanks to Marc
984           Fournier.
985         * Build system: Detection of the Java environment has been made
986           deterministic to allow for reproducible builds. Thanks to Marc
987           Fournier. #1523
988         * APC UPS plugin: Unavailable metrics are now skipped instead of
989           reported as 0 (zero). Thanks to Florian Forster. #2025
990         * Battery plugin: The minimum value has been removed from the power type
991           to allow the plugin to report discharging batteries as negative power.
992           Thanks to Florian Forster.
993         * DBI, Oracle and PostgreSQL plugins: An error message when the type
994           instance is truncated has been added. Thanks to Florian Forster. #4
995         * cURL-JSON plugin: A possible segmentation fault when parsing
996           unexpected JSON has been fixed. Thanks to Florian Forster. #1896
997         * DF plugin: Compilation with xfsprogs ≥ 4.7.0 has been fixed. Thanks
998           to Thomas Deutschmann. #1877
999         * Modbus plugin: Build issues on FreeBSD have been fixed. Thanks to
1000           Florian Forster.
1001         * Network plugin: An error message has been corrected. Thanks to Florian
1002           Forster.
1003         * Network plugin: Handling of errors form secure memory initialization
1004           has been improved: the plugin fails gracefully now instead of calling
1005           "abort()". Thanks to Sebastian Harl.
1006         * Network plugin: The gcrypt library is only initialized when it is
1007           actually required due to the network plugin's configuration. Thanks to
1008           Florian Forster. #1902
1009         * Ping plugin: The init callback has been changed to be idempotent,
1010           fixing errors being reported on Solaris. Thanks to Florian Forster.
1011           #869
1012         * PostgreSQL plugin: The query_plans and query_plans_by_table queries
1013           have been improved to return 0 (zero) instead of "NULL" when not
1014           available. Thanks to Bernd Zeimetz. #1905
1015         * PowerDNS plugin: The "recursor command" has been fixed so PowerDNS can
1016           correctly parse all requested fields. Thanks to Ruben Kerkhof.
1017         * Python plugin: Handling of data sets with multiple data sources of
1018           different type has been fixed. Thanks to Sebastian Harl.
1019         * RRDCacheD plugin: Reconnection behavior after failed operations has
1020           been added. Thanks to Sebastian Harl. Debian#657877
1021         * Write Graphite and AMQP plugins: A bug that could lead to a missing
1022           null-termination has been fixed. Thanks to Markus Linnala.
1023         * Write Kafka plugin: Support for librdkafka 0.9.0 has been added.
1024           Thanks to Florian Forster.
1025         * Write Riemann plugin: Build issues on Solaris have been fixed. Thanks
1026           to Florian Forster.
1027
1028 2016-07-25, Version 5.5.2
1029         * collectd: A division by zero has been fixed in the
1030           "plugin_dispatch_multivalue()" function. Thanks to Corey Kosak.
1031         * collectd: The address of the Free Software Foundation has been fixed
1032           in GPL license headers. Thanks to Ruben Kerkhof.
1033         * Build system: Detection and handling of librrd 1.6 and later has been
1034           fixed. Thanks to Ruben Kerkof.
1035         * Apache plugin: A warning about a possible misconfiguration has been
1036           added. Thanks to Marc Fournier.
1037         * cURL, cURL-JSON and cURL-XML plugins: A memory leak when allocating
1038           more memory fails has been fixed. Thanks to Brandon Arp.
1039         * DF plugin: A build issue on DragonFlyBSD has been fixed. Thanks to
1040           Ruben Kerkhof. #1575
1041         * Ethstat plugin: Code to strip leading whitespace from device names.
1042           This works around an issue in the VMXNet3 driver. Thanks to Thomas
1043           Guthmann. #1059
1044         * Exec plugin: A problem in the error handling of an fdopen() failure
1045           has been fixed. Thanks to @ciomaire.
1046         * Modbus plugin: The debug output has been disabled by default. It is
1047           now only enabled when building with "--enable-debug". Thanks to Eric
1048           Sandeen and Marc Fournier.
1049         * Network plugin: A check for the initialization of secure memory has
1050           been added. Previously, failure to initialize this memory was
1051           ignored. Thanks to @yujokang. #1665
1052         * Network plugin: A heap overflow has been fixed in the server code.
1053           This issue can be triggered remotely and is potentially exploitable.
1054           Thanks to Emilien Gaspar. CVE-2016-6254
1055         * Perl plugin: Init callbacks have been changed to run essentially
1056           single-threaded to avoid race conditions by init functions which
1057           create additional threads. Thanks to Pavel Rochnyack. #1706
1058         * Processes plugin: A warning about too long process names has been
1059           added. Thanks to Marc Fournier. #1284
1060         * Redis plugin: A memory leak in an error handling code path has been
1061           fixed. Thanks to Andrés J. Díaz.
1062         * Redis plugin: The data source type of the expired_keys metric has been
1063           corrected to "DERIVE". Thanks to Marc Falzon and Marc Fournier. #1483.
1064         * SMART plugin: A build dependency on libudev has been added. Thanks to
1065           Pavel Rochnyack. #1724
1066         * StatsD plugin: A deadlock on plugin shutdown has been fixed. Thanks to
1067           Pavel Rochnyack #1703
1068         * Write HTTP plugin: Freeing of memory holding HTTP headers during
1069           shutdown has been fixed. Thanks to Tolga Ceylan.
1070         * Write Sensu plugin: A segfault when the Tag was unset has been fixed.
1071           Thanks to Marc Fournier.
1072         * ZFS ARC plugin: The cache_operation-stolen metric has been removed for
1073           FreeBSD 10.2 and later. Thanks to Ruben Kerkhof. #1580
1074
1075 2016-01-22, Version 5.5.1
1076         * Build system: Compilation errors have been avoided by correctly
1077           defining package name and version used by autoconf. Thanks to Nathan
1078           Berkley. #1063
1079         * Build system: Dependency ordering was fixed to ensure parallel builds
1080           work reliably. Thanks to Gustavo Zacarias. #1125
1081         * Build system: Error messages have been improved and building the unit
1082           tests has been fixed on Solaris. Thanks to Florian Forster and
1083           Dagobert Michelsen. #1077
1084         * Build system: The move of the "utils_ignorelist" functions has been
1085           reverted. This fixes build issues of numerous plugins. Thanks to
1086           Benjamin Drung;. #1323
1087         * Build system: The fhcount plugin has been restricted to Linux. Thanks
1088           to Ruben Kerkhof. #1195
1089         * Build system: Detection of header files for the turbostat plugin has
1090           been fixed. Thanks to Marc Fournier. #1075
1091         * collectd: The "LC_NUMERIC" locale is now forced, to prevent issues
1092           with some plugins on environments using a comma as decimal separator.
1093           Thanks to Florian Forster. #1237
1094         * Documentation: Some precisions related to the virt plugin have beed
1095           added. Thanks to Wojtek Bocer and Ruben Kerkhof.
1096         * Documentation: The CollectdInternalStats documentation has been
1097           improved. Thanks to Yves Mettier and Florian Forster.
1098         * Battery plugin: A missing Type has been added. Thanks to Marc
1099           Fournier. #1338
1100         * Bind plugin: An off-by-one error has been fixed: an index was checked
1101           against a wrong variable, which may lead to an out-of-bounds read.
1102           Thanks to Michal Humpula. #1123
1103         * Ceph plugin: JSON parsing has been refactored to support ceph 10.0.0
1104           and fixes several buffer overflows. Thanks to Florian Forster. #1350
1105         * CPU plugin: A Mac OS X specific bug has been fixed: the plugin
1106           expected an incorrect number of CPU states, resulting in failing read
1107           callbacks. This regression was introduced in 5.5.0. Thanks to Robert
1108           Viduya.
1109         * Disk plugin: Support for Mac OS X 10.10 has been added. Thanks to
1110           Robert Viduya. #1065
1111         * IPC plugin: Support for building with musl-libc has been added. Thanks
1112           to Natanael Copa. #1147
1113         * Log Logstash plugin: A segfault when using libyajl, version 1 was
1114           fixed. Thanks to Vincent Bernat. #1190
1115         * Log Logstash plugin: The timestamp is now ISO 8601 compliant. Thanks
1116           to Marc Fournier. #1132
1117         * memcached plugin: The Type of the listen-disabled metric was fixed.
1118           Thanks to Florian Forster. #1356
1119         * MySQL plugin: The Type used by Innodb_buffer_pool_pages_flushed was
1120           fixed. Thanks to Marek Becka. #1085
1121         * OpenLDAP plugin: A crash when using LDAPI (LDAP-over-IPC) got fixed.
1122           Thanks to Marek Becka. #1080
1123         * OpenLDAP plugin: Support for Mac OS X has been added. Thanks to Ruben
1124           Kerkhof. #1489
1125         * SMART plugin: A memory leak has been fixed. Thanks to Florian
1126           Schüller and Pierre-Yves Ritschard. #1076
1127         * Swap plugin: A regression that would lead to swap usage being reported
1128           in kilobytes (instead of bytes) has been fixed. Thanks to Marek Becka.
1129           #1071
1130         * Varnish plugin: Support for FreeBSD has been added. Thanks to Ruben
1131           Kerkhof. #1182
1132         * Varnish plugin: Support for versions 3 and 4 has been made more
1133           tolerant to minor changes in Varnish point releases. Thanks to Marc
1134           Fournier. #1302
1135         * virt plugin: A copy-and-paste mistake in an error message has been
1136           fixed. Thanks to Ruben Kerkhof. #1101
1137         * Write Kafka plugin: Support for Solaris has been added. Thanks to
1138           Shahul Hameed. #1171
1139         * Write Redis plugin: Dead code has been removed. Thanks to Brian Kelly.
1140           #1143
1141         * 27 patches have been applied to numerous plugins and core components,
1142           fixing various programming errors which were reported by scan-build,
1143           libasan, FBInfer, coverity-scan and clang: Thanks to Ruben Kerkhof,
1144           Florian Forster and Marek Becka.
1145         * Collectd::Unixsock: A Perl error got corrected. Thanks to Ciaran Mac
1146           An Iomaire. #1295
1147
1148 2015-05-27, Version 5.5.0
1149         * Build system: Ability to make out-of-tree builds has been fixed.
1150           Thanks to Vincent Bernat. #792
1151         * Build system, Disk and Users plugins: Detection and use of libstatgrab
1152           ≧ 0.90 has been added. Thanks to Vincent Bernat. #445, #795, #806,
1153           #807, #908
1154         * Build system, Memory, CPU, TCPConns and Processes plugins: Numerous
1155           fixes related to OpenBSD support have been added. Thanks to Landry
1156           Breuil. #777, #778, #779, #808
1157         * Build system: Plugins now only export "module_register()". Thanks to
1158           Florian Forster.
1159         * Build system: Various cleanups and improvements have been done. Thanks
1160           to Marc Fournier.
1161         * collectd: Numerous internal changes and improvements to the daemon and
1162           the plugin API have been make. Thanks to Florian Forster, Pierre-Yves
1163           Ritschard and Alex Petrov. #512, #727
1164         * collectd: Numerous spelling mistakes have been corrected in comments
1165           and documentation and several error messages have been improved.
1166           Thanks to Ruben Kerkhof, Abhinav Upadhyay, Olivier Bazoud, Pierre-Yves
1167           Ritschard, Tim Smith, Moshe Zada, Katelyn Perry and Marc Fournier.
1168         * collectd: Rules/Targets can now be appended to existing Filter Chains.
1169           Thanks to Marc Falzon. #444
1170         * collectd: Failing Filter Chains destinations will now log the list of
1171           available write targets. Thanks to Wilfried Goesgens. #650, #1043
1172         * collectd: Support for process signaling and management by upstart and
1173           systemd has been implemented for the Linux platform. Thanks to
1174           Pierre-Yves Ritschard and Marc Fournier. #798, #811, #814
1175         * collectd: The "CollectInternalStats" option has been added. Thanks to
1176           Yves Mettier. #691
1177         * collectd: The daemon source code and dependencies have moved to the
1178           "src/daemon/" directory. Thanks to Florian Forster.
1179         * collectd: The new "MaxReadInterval" option allows to cap the
1180           exponential retry interval of plugins read errors. Thanks to Alexey
1181           Remizov and Florian Forster. #713
1182         * collectd: The "-P" command-line option now has precedence over the
1183           "PIDFile" option. Thanks to Thomas D. #553
1184         * collection.cgi: Various data-source related adjustments have been
1185           made. Thanks to Fabiano Pires and Sebastian Harl.
1186         * libcollectdclient: Now propagates errors when signing / encrypting
1187           network packets. Thanks to Florian Forster.
1188         * Configuration: Support for unquoted IPv6 addresses has been added.
1189           Thanks to Sebastian Harl. #489
1190         * Documentation: Various improvements have been done. Thanks to Florian
1191           Forster and Marc Fournier.
1192         * Examples: the sample C plugin has been updated to the current plugin
1193           API. Thanks to Sebastian Harl.
1194         * Licensing: The following components have been relicensed to the MIT
1195           license: the Apple Sensors, Ascent, DBI, E-Mail, Entropy, GenericJMX,
1196           gmond, LogFile, nginx, Notify Desktop, NTPd, NUT, olsrd, Perl, Ping,
1197           PostgreSQL, Protocols, RouterOS, RRDCacheD, SNMP, StatsD, SysLog,
1198           Table, Tail, UnixSock, vmem, VServer, Wireless, Write Riemann and XMMS
1199           plugins, the core collectd daemon, the collectdmon, collectd-nagios
1200           and collectd-tg utilities, all the Targets and Matches, liboconfig,
1201           most of the "utils_*" files and the plugin API.
1202         * Tests: A test suite has been added. Thanks to Florian Forster.
1203         * Threshold: The hysteresis calculation has been made more reliable.
1204           Thanks to Jan Kundrát. #581
1205         * Threshold: Various fixes and improvements have been made. Thanks to
1206           Manuel Luis Sanmartín Rozada. #649, #644
1207         * AMQP plugin: The "ConnectionRetryDelay" option has been added,
1208           allowing to delay reconnection. Thanks to Yoga Ramalingam and Marc
1209           Fournier. #833
1210         * AMQP plugin: The "QueueDurable" and "QueueAutoDelete" options have
1211           been added, giving control over queue creation and deletion. Thanks to
1212           David Blundell and Marc Fournier. #623
1213         * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx and Write HTTP
1214           plugins: Customizing the "User-Agent" field is now possible at
1215           compile-time. Thanks to Jeremy Katz. #440
1216         * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx plugins: The
1217           connection will be reset if it hasn't completed within the configured
1218           "Interval". The new "Timeout" option gives control over this behavior.
1219           Thanks to Jan Kundrát and Marc Fournier. #982, #983, #993
1220         * Apache, Ascent, cURL, cURL-JSON, cURL-XML, nginx, Write HTTP plugins:
1221           Allow usernames and passwords to contain colons if built against
1222           libcurl ≧ 7.19.1. Thanks to Marc Fournier. #695, #947
1223         * Apache plugin: The "SSLCiphers" option gives control over the
1224           encryption algorithms to use with TLS connections. Thanks to Toni
1225           Moreno. #946
1226         * Barometer plugin: This new plugin reads sensor data from various
1227           Freescale and Bosch digital barometers. Thanks to Tomas Menzl. #69,
1228           #693
1229         * Battery plugin: Reporting values as percentages and reporting degraded
1230           batteries has been added. Thanks to Florian Forster.
1231         * Battery plugin: Support for reading values from sysfs on Linux has
1232           been added. Thanks to Andy Parkins, Nicholas Humfrey, Peter Wu and
1233           Florian Forster. #725, #810, #998
1234         * Battery plugin: The value for current is no longer supplied unless the
1235           battery provides this information. Thanks to Florian Forster.
1236         * BIND plugin: Bind's XML v3 API is now supported; Thanks to Victor
1237           Berger, Bruno Prémont and Michal Humpula. #742, #847
1238         * Ceph plugin: This new plugin collects statistics from the Ceph
1239           distributed storage system. Thanks to Dan Ryder, Dennis Zou, Colin
1240           McCabe, Sage Weil. #522, #598
1241         * ConnTrack plugin: Support for reporting values as percentages as well
1242           as legacy conntrack files in "/proc" has been added. Thanks to
1243           Pierre-Yves Ritschard. #497, #680
1244         * CPU plugin: The plugin is now able to report values as percentages and
1245           aggregate values per-state and per-CPU. Thanks to Pierre-Yves
1246           Ritschard, Florian Forster, Fabien Wernli, Nicholas Humfrey and
1247           Wilfried Goesgens. #499, #516, #639 #734, #812, #802
1248         * cURL-JSON plugin: Extracting values from complex JSON structures has
1249           been enhanced. Thanks to Jim Radford. #408, #411
1250         * cURL-JSON plugin: Intervals can now be configured on a per-URL basis.
1251           Thanks to Stan Sawa. #685
1252         * cURL-JSON, cURL-XML, Write HTTP plugins: These plugins now also follow
1253           HTTP redirects. Thanks to Marc Fournier.
1254         * cURL, cURL-JSON, cURL-XML plugins: HTTP Digest authentication has been
1255           implemented. Thanks to Frank Cornelis. #482
1256         * DBI, Oracle, PostgreSQL plugins: A "MetadataFrom" parameter has been
1257           added which allows to set metadata from database columns. Thanks to
1258           Mark Wong. #317, #321
1259         * DBI plugin: Querying several databases in parallel is now possible.
1260           Thanks to Vincent Bernat. #453
1261         * Disk plugin: On the Linux platform, disk names can now get looked up
1262           in udev with the "UdevNameAttr" option. Thanks to Patrick Mooney. #537
1263         * Disk plugin: This plugin now collects several additional I/O-related
1264           metrics on the Linux platform. Thanks to Florian Forster and Michael
1265           Schenck. #705, #759
1266         * DRBD plugin: This new plugin reads Linux's Distributed Replicated
1267           Block Device (DRBD) statistics. Thanks to Tim Laszlo. #566, #700
1268         * Exec, UnixSock plugins: The "PUTNOTIF" command now allows to set
1269           metadata on notifications. Thanks to John-John Tedro. #416
1270         * fhcount plugin: This new plugin reports the number of used file
1271           handles. Thanks to Jiri Tyr. #1009
1272         * GenericJMX plugin: A Class Loader for "JMXConnectorFactory" has been
1273           added, allowing the plugin to work with JBOSS > 7. Thanks to Alexandre
1274           Moutot. #452
1275         * IPC plugin: This new plugin collects information related to shared
1276           memory. Thanks to Andrés J. Díaz. #925
1277         * Java plugin: Now uses the hostname defined in the configuration file.
1278           Thanks to Pierre-Yves Ritschard. #530, #681
1279         * Load plugin: The plugin is now able to report values as percentages.
1280           Thanks to Vedran Bartonicek and Pierre-Yves Ritschard. #344, #498
1281         * Log Logstash plugin: This new plugin writes collectd logs and events
1282           as Logstash JSON formatted events. Thanks to Pierre-Yves Ritschard.
1283           #360
1284         * LVM plugin: The plugin collects thin pool data volumes size, and no
1285           longer reports virtual volumes. Thanks to Benjamin Gilbert. #603
1286         * memcached plugin: "listen_disabled_num" are now also reported. Thanks
1287           to Matt Cottingham. #622
1288         * Memory plugin: Slab memory reporting on the Linux platform has been
1289           added. Thanks to Manuel CISSÉ and Marc Fournier. #560, #697
1290         * Memory plugin: The plugin is now able to report values as percentages.
1291           Thanks to Jeremy Katz, Florian Forster and Manuel CISSÉ. #501, #511,
1292           #559
1293         * Modbus plugin: Selecting between holding and input registers is now
1294           possible. Thanks to Jan Vitek. #338
1295         * Modbus plugin: Support for accessing devices through an RS-485 serial
1296           port has been added. Thanks to Eric Sandeen.
1297         * Multimeter plugin: This plugin isn't built by default on the AIX
1298           platform anymore. Thanks to Manuel Luis Sanmartin Rozada. #549, #684
1299         * MySQL and PostgreSQL plugins: Passing "127.0.0.1" as a host will now
1300           result in the global Hostname being used in metric names. Thanks to
1301           Jeremy Katz. #441
1302         * MySQL plugin: InnoDB, Select and Sort statistics collection has been
1303           added. Thanks to Wilson Felipe, Marek Becka and Pierre-Yves Ritschard.
1304           #248, #621, #699, #824
1305         * MySQL plugin: The "Alias" and "ConnectTimeout" options have been
1306           added. Thanks to William Tisäter.
1307         * Netlink plugin: Support for 64bit netlink counters has been added.
1308           Thanks to Marek Becka. #435
1309         * Network plugin: The "ReconnectInterval" configuration option has been
1310           added. Thanks to John Ferlito. #732
1311         * NFS plugin: Support for NFSv4.0 has been implemented. Thanks to Marek
1312           Becka. #550
1313         * OneWire plugin: Support for more temperature-providing sensor families
1314           has been added. Thanks to Tomasz Torcz. #672
1315         * OneWire plugin: Support for full OWFS path and more device families
1316           has been implemented. Thanks to Tomas Menzl. #68
1317         * OpenLDAP plugin: This new plugin reads monitoring information from
1318           OpenLDAP's "cn=Monitor" subtree. Thanks to Kimo Rosenbaum, Marc
1319           Fournier and Nicholas Humfrey. #719
1320         * OpenVPN plugin: Support for OpenVPN 2.3.0 has been implemented. Thanks
1321           to Ed Okerson. #252
1322         * OpenVZ plugin: Various improvements have been made, making the plugin
1323           report values like the other collectd plugins do. Thanks to Chris
1324           Lundquist. #264
1325         * Perl plugin: A new "listval_filter" method has been added, various
1326           internal cleanups and improvements have been made and a test suite has
1327           been added. Thanks to Matthias Bethke. #728
1328         * PostgreSQL plugin: The new "ExpireDelay" option allows skipping older
1329           values pending write when the database slows down. Thanks to Stephen
1330           O'Dor. #593
1331         * PowerDNS plugin: The plugin was updated for stats from pdns 3.4.3.
1332           Thanks to Ruben Kerkhof. #965
1333         * Processes plugin: A memory-usage related optimization for low-profile
1334           systems has been added. Thanks to Florian Forster. #652
1335         * Python plugin: Support for Python3 has been improved, "ModulePath" is
1336           now prepended to "sys.path", and the "get_dataset()" function has been
1337           added to the Python API. Thanks to Sven Trenkel and Patrick Browne.
1338           #890, #751, #771
1339         * Redis and Write_Redis plugins: The support library has been switched
1340           from credis to hiredis. Thanks to Andrés J. Díaz, Victor Seva, Marc
1341           Fournier, Johan Bergström, Michael Spiegle and brianpkelly. #296,
1342           #464, #475, #799, #1030
1343         * Redis plugin: Custom commands can now be used to fetch values stored
1344           in Redis. Thanks to Pierre-Yves Ritschard. #816
1345         * Redis plugin: Support for passwords up to 512 characters long has been
1346           added. Thanks to Jeremy Katz. #532
1347         * Sensors plugin: Support for lm_sensors' power sensors has been added.
1348           Thanks to Jan Kundrát. #571
1349         * SMART plugin: This new plugin collects SMART statistics from disk
1350           drives. Thanks to Vincent Bernat. #797
1351         * SNMP plugin: A blacklist/whitelist feature can now be used to filter
1352           which OIDs to collect. Thanks to Christophe Courtaut. #414
1353         * SNMP plugin: SNMPv3 authentication and encryption support has been
1354           implemented. Thanks to Michael Pilat. #362
1355         * SNMP plugin: Two error messages have been disambiguated. Thanks to
1356           Sergey. #939, #952
1357         * Swap plugin: The plugin is now able to report values as percentages.
1358           Thanks to Jeremy Katz and Florian Forster. #500, #510
1359         * Swap plugin: The plugin no longer fails on Linux systems where
1360           "SwapCached" isn't exposed by the kernel. Thanks to Florian Forster.
1361           #733
1362         * Tail plugin: "GaugeInc" and "GaugeAdd" options have been implemented.
1363           Thanks to Andre Ferraz. #673
1364         * Tail plugin: Intervals can now be configured on a per-File basis.
1365           Thanks to Tom Leaman. #446
1366         * TCPConns plugin: The "AllPortsSummary" option, allowing to summarize
1367           all connections, has been added. Thanks to Marek Becka. #488
1368         * TCPConns plugin: Three metrics were renamed on the AIX platform, for
1369           the sake of consistency. Thanks to Manuel Luis Sanmartín Rozada. #546
1370         * Turbostat plugin: This new plugin reads CPU frequency and C-state
1371           residency on modern Intel turbo-capable processors. Thanks to Vincent
1372           Brillault, Jean Delvare and Nicolas Iooss. #651
1373         * UnixSock plugin: The "GETTHRESHOLD" command has been re-added. Thanks
1374           to Manuel Luis Sanmartín Rozada. #674
1375         * Varnish plugin: Varnish 4 support has been added, as well as as
1376           monitoring metrics only available in Varnish 4. Thanks to Marc
1377           Fournier. #618, #783
1378         * virt plugin: Guests memory usage is now also collected. Thanks to
1379           Tiago Carvalho, jazzmes and Zollner Robert.
1380         * virt plugin: It is now possible to chose between using guests' name or
1381           UUID as plugin_instance. Thanks to Remi Ferrand. #385
1382         * virt plugin: The libvirt plugin has been renamed to virt. Thanks to
1383           Florian Forster.
1384         * Write Graphite plugin: When the connection to graphite fails,
1385           reconnection attempts are now limited to once per second. Thanks to
1386           Florian Forster. #625
1387         * Write HTTP plugin: Multi-instance support of this plugin has been
1388           improved. The "<URL "url">" block has been deprecated in favor of
1389           "<Node "identifier">". Thanks to Marc Fournier. #902
1390         * Write HTTP plugin: Several TLS-related configuration options have been
1391           added. Thanks to Ingmar Runge. #666
1392         * Write HTTP plugin: The "LowSpeedLimit" and "Timeout" options allow to
1393           reset slow/stalled network connections. Thanks to loginator17 and Marc
1394           Fournier. #752, #985
1395         * Write HTTP plugin: The size of the payload posted to the HTTP server
1396           can now be controlled with the "BufferSize" option. Thanks to Florian
1397           Forster. #722
1398         * Write Kafka plugin: This new plugin sends data to Apache Kafka, a
1399           distributed messaging queue. Thanks to Pierre-Yves Ritschard,
1400           ciomaire, Vincent Bernat, Marc Fournier. #670, #694, #794, #853, #014
1401         * Write Log plugin: This new plugin dispatches collected values to the
1402           configured log destination(s). Thanks to Pierre-Yves Ritschard. #886
1403         * Write Riemann plugin: Extra meta strings are now added as attributes
1404           in notifications. Thanks to John-John Tedro. #417
1405         * Write Riemann plugin: Notification message are now sent to the Riemann
1406           server via the description field. Thanks to Adrian Miron. #575
1407         * Write Riemann plugin: Support for custom attributes has been added.
1408           Thanks to Pierre-Yves Ritschard. #459
1409         * Write Riemann plugin: Support had been implemented for sending events
1410           to Riemann in batches (when using TCP), and is enabled by default.
1411           Thanks to Pierre-Yves Ritschard. #800
1412         * Write Riemann plugin: The "EventServicePrefix" option has been added,
1413           which adds a prefix to event service names. Thanks to Moshe Zada. #706
1414         * Write Riemann plugin: Threshold checks can now be passed down to the
1415           Riemann server. Thanks to Pierre-Yves Ritschard. #518
1416         * Write Sensu plugin: This new plugin submits values to Sensu, a stream
1417           processing and monitoring system. Thanks to Fabrice A. Marie and Marc
1418           Fournier. #912, #1001, #1016
1419         * Write TSDB plugin: This new plugin sends data to OpenTSDB, a scalable
1420           time series database. Thanks to Kevin Bowling, Florian Forster, Dallin
1421           Young, Michael Schenck and Pierre-Yves Ritschard. #703, #772, #945
1422         * ZFS ARC plugin: Support for ZFS-on-Linux has been added. Thanks to
1423           Marc Fournier and Wilfried Goesgens. #552
1424         * Zookeeper plugin: This new plugin reads data from the Apache Zookeeper
1425           "MNTR" command. Thanks to Jeremy Katz. #826
1426
1427 2016-07-26, Version 5.4.3
1428         * Build system: A deprecation warning has been removed. Thanks to
1429           Florian Forster.
1430         * Build system: An ordering issue when build the AMQP plugin was
1431           corrected. Thanks to Shahul Hameed.
1432         * Build system: Building the gmond plugin against recent libganglia
1433           versions has been added. Thanks to Marc Fournier. #1129
1434         * Build system: "collectd-tg" now builds on AIX. Thanks to Manuel Luis
1435           Sanmartín Rozada. #542
1436         * Build system: "version-gen.sh" portablility was improved. Thanks to
1437           Marc Fournier and Ruben Kerkhof.
1438         * Build system: Compiling utils_dns.c on Solaris has beed fixed. Thanks
1439           to Yves Mettier, Dagobert Michelsen and Florian Forster. #348
1440         * Build system: Default JDK detection got improved. Thanks to Ruben
1441           Kerkhof and Marc Fournier.
1442         * Build system: Detection and handling of librrd 1.6 and later has been
1443           fixed. Thanks to Ruben Kerkhof.
1444         * Build system: notify_email build options got corrected to make it
1445           build on non-GNU libc systems. Thanks to Marc Fournier.
1446         * Build system: Protobuf building and logging has been improved. Thanks
1447           to Ruben Kerkhof.
1448         * Build system: The "make distcheck" target was fixed to properly handle
1449           java build artifacts. Thanks to Florian Forster.
1450         * Build system: The configure script got fixed to work properly when
1451           called with "CC="gcc -Wall -Werror"" . Thanks to Marc Fournier.
1452         * Build system: The configure script will now fail if pkg-config isn't
1453           available. Thanks to Ruben Kerkhof.
1454         * Build system: The users plugin now builds properly on Solaris when
1455           libstatgrab is available. Thanks to Dagobert Michelsen. #1061
1456         * Build system: Various fixes have been done to improve library
1457           detection on FreeBSD. Thanks to Ruben Kerkhof.
1458         * collectd2html: Several perl errors have been corrected. Thanks to Ruud
1459           van Melick. #1103
1460         * collectd: A global gauge format-string is now used to avoid loss of
1461           precision. Thanks to Florian Forster. #1039
1462         * collectd: A race condition at plugin initialization time was fixed.
1463           Thanks to Jan Andres. #1316
1464         * collectd: Autoloading now properly sets plugin context, allowing
1465           plugins to determine the interval. Thanks to Florian Forster. #1069
1466         * collectd: Empty "Plugin" blocks are now supported by the configuration
1467           file parser. Thanks to Manuel Luis Sanmartín Rozada. #1035
1468         * collectd: The address of the Free Software Foundation has been fixed
1469           in GPL license headers. Thanks to Ruben Kerkhof.
1470         * collectd: Writing to a closed TCP socket is now properly handled.
1471           Thanks to Tamás Földesi. #1104
1472         * Documentation: iptables plugin: IPv6 configuration option has been
1473           added to the collectd.conf(5) manpage. Thanks to 'Marc Fournier''.
1474           #1496
1475         * AMQP plugin: The plugin was fixed to build against librabbitmq 0.6.0.
1476           Thanks to Remi Collet. #1008
1477         * Apache plugin: A warning about a possible misconfiguration has been
1478           added. Thanks to Marc Fournier.
1479         * Apache plugin: The plugin was extended to parse the whole response,
1480           required to support Apache versions greater than 2.4.17. Thanks to
1481           Marc Fournier and Florian Forster. #1170, #1343
1482         * APC UPS plugin: Log messages are now prefixed with the plugin name.
1483           Thanks to Sergey. #1329
1484         * Bind plugin: The type_instance now gets properly sanitized. Thanks to
1485           Thomas Kho. #992
1486         * CPU plugin: Error messages on MacOSX have been improved. Thanks to
1487           Florian Forster. #22
1488         * cURL plugin: A typo in an error message got corrected. Thanks to Marc
1489           Fournier.
1490         * cURL, cURL-JSON and cURL-XML plugins: A memory leak when allocating
1491           more memory fails has been fixed. Thanks to Brandon Arp.
1492         * DF plugin: An bug preventing filesystems which don't report inodes
1493           such as btrfs has been corrected. Thanks to Marek Becka. #1096
1494         * DF plugin: Duplicate entries are no longer reported twice. Thanks to
1495           Stefan Brüns and Florian Forster. #1402
1496         * DF plugin: Legacy code for skipping "rootfs" mount points has been
1497           removed. Thanks to Marc Fournier. #1402
1498         * DF plugin: Legacy references to the "ReportReserved" option have been
1499           removed. Thanks to Marc Fournier.
1500         * DF plugin: Reading the mtab now uses a reentrant function when
1501           possible. Thanks to Ruben Kerkhof. #1163
1502         * Ethstat plugin: Code to strip leading whitespace from device names.
1503           This works around an issue in the VMXNet3 driver. Thanks to Thomas
1504           Guthmann. #1059
1505         * Exec plugin: A file descriptor leak when the plugin is configured to
1506           run as a non-existing user was corrected. Thanks to Gautam BT and Marc
1507           Fournier. #762
1508         * Exec plugin: A problem in the error handling of an fdopen() failure
1509           has been fixed. Thanks to @ciomaire.
1510         * Interface plugin: Documentation about regular expressions in the
1511           ignore list has been added. Thanks to Jakub Jankowski.
1512         * IRQ plugin: The "FIQ" line is now skipped as it doesn't contain any
1513           counter. Thanks to Ruben Kerkhof. #971
1514         * Modbus plugin: The debug output has been disabled by default. It is
1515           now only enabled when building with "--enable-debug". Thanks to Eric
1516           Sandeen and Marc Fournier.
1517         * MongoDB plugin: A memory leak has been fixed and some adaptations to
1518           the current API of the mongo-c-driver have been made. Thanks to
1519           Florian Forster. #956
1520         * Network plugin: A check for the initialization of secure memory has
1521           been added. Previously, failure to initialize this memory was ignored.
1522           Thanks to @yujokang. #1665
1523         * Network plugin: A heap overflow has been fixed in the server code.
1524           This issue can be triggered remotely and is potentially exploitable.
1525           Thanks to Emilien Gaspar. CVE-2016-6254
1526         * Network plugin: The TimeToLive option handling was made more robust.
1527           Thanks to Tim Laszlo. #654
1528         * NTPd plugin: Documentation about the required "mode 7" has been added.
1529           Thanks to Jakub Jankowski.
1530         * NTPd plugin: Reporting of "time_offset-loop" was corrected to match
1531           the values from ntpq/ntpdc. Thanks to Pierre Fersing and Florian
1532           Forster. #1300
1533         * OpenVPN plugin: The plugin was fixe to avoid signaling an error when
1534           no clients were connected. Thanks to Florian Forster. #731
1535         * Perl plugin: Init callbacks have been changed to run essentially
1536           single-threaded to avoid race conditions by init functions which
1537           create additional threads. Thanks to Pavel Rochnyack. #1706
1538         * PF plugin and DNS plugin: These plugins have been fixed to build
1539           properly on OpenBSD again. Thanks to Ruben Kerkhof.
1540         * Processes plugin: A compilation error on systems without "regex.h" has
1541           been fixed. Thanks to Corey Kosak.
1542         * Processes plugin: A memory leak on Solaris has been fixed. Thanks to
1543           Jim Quinn.
1544         * Processes plugin and Swap plugin: These plugins have been corrected to
1545           also work inside FreeBSD jails. Thanks to biancalana. #1019
1546         * Processes plugin: A warning about too long process names has been
1547           added. Thanks to Marc Fournier. #1284
1548         * Processes plugin: Process counting on the FreeBSD and OpenBSD
1549           platforms has been fixed. Thanks to Herve COMMOWICK. #1298
1550         * Processes plugin: The plugin was fixed to work properly on Solaris.
1551           Thanks to Jan Andres. #919
1552         * Python plugin: A double-free bug got fixed. Thanks to Sven Trenkel.
1553           #1285
1554         * RRDtool plugin: A race condition leading to corrupt RRD file creation
1555           has been fixed. Thanks to Manuel Luis Sanmartín Rozada. #1031
1556         * SNMP plugin: The "Gauge32" signedness was corrected to match RFC1902.
1557           Thanks to Nathan Ward. #1325
1558         * StatsD plugin: A deadlock on plugin shutdown has been fixed. Thanks to
1559           Pavel Rochnyack #1703
1560         * StatsD plugin: A memory leak was corrected. Thanks to Florian Forster.
1561           #997
1562         * StatsD plugin: A symbol lookup error was fixed by properly linking the
1563           plugin against libm. Thanks to Florian Forster.
1564         * StatsD plugin: "utils_latency": Support for including values above
1565           1000 in percentile calculation has been added. Thanks to Yoga
1566           Ramalingam. #401
1567         * StatsD plugin: "utils_latency": Two division by zero error conditions
1568           have been corrected. Thanks to Wilfried Goesgens. #655
1569         * StatsD plugin: Counters absolute counts are now also reported. Thanks
1570           to Pierre-Yves Ritschard. #1311
1571         * StatsD plugin: The plugin now emits NaN values when no timer event is
1572           recorded. Thanks to Florian Forster. #1038, #1039
1573         * StatsD plugin: The plugin was corrected to avoid crashing when
1574           negative timer values are submitted. Thanks to Florian Forster. #1131
1575         * Tail CSV plugin: The plugin was fixed to work properly with multiple
1576           "Collect" options and a bug got fixed when no "TimeFrom" is specified.
1577           Thanks to Manuel Luis Sanmartín Rozada and Florian Forster. #1032
1578         * TCPConns plugin: A memory leak was fixed. Thanks to Florian Forster.
1579           #1074
1580         * TCPConns plugin: An bug causing collectd to enter an inifinite loop on
1581           OpenBSD was fixed. Thanks to Landry Breuil. #1094
1582         * Threshold plugin: Threshold configuration blocks can now be defined in
1583           different files. Thanks to Michael Salmon. #551
1584         * vmem plugin: Support for pgsteal in recent Linux kernels has been
1585           added. Thanks to Jakub Jankowski. #1307
1586         * vmem plugin: The DSType for nr_dirtied and nr_written was corrected to
1587           report a derive. Thanks to Marek Becka. #1072
1588         * Write Graphite plugin: Error handling when submitting metrics to the
1589           server is now more robust. Thanks to Sam Pointer. #1364
1590         * Write HTTP plugin: Freeing of memory holding HTTP headers during
1591           shutdown has been fixed. Thanks to Tolga Ceylan.
1592         * Write Redis plugin: Multi-Valued key was made easier to parse by
1593           adding a "|" character as a delimiter. Thanks to brianpkelly and
1594           Florian Forster. #1070
1595         * Write Redis plugin: The timestamp format was corrected. Thanks to
1596           Florian Forster.
1597         * ZFS ARC plugin: The plugin was will not emit warning about missing
1598           "l2_size" stats anymore. Thanks to Jan Andres. #919
1599         * 152 patches have been applied to numerous plugins and core components,
1600           fixing various programming errors which were reported by scan-build,
1601           libasan, FBInfer, coverity-scan, clang and gcc-6: Thanks to Ruben
1602           Kerkhof, Florian Forster, Marc Fournier, Corey Kosak, Laurent,
1603           Claudius Zingerli and Fabien Wernli.
1604
1605 2015-02-26, Version 5.4.2
1606         * Build system: Numerous fixes. Thanks to Bjørn Nordbø, Jim Radford,
1607           KOMEDA Shinji, Lauri Tirkkonen, Manuel Luis Sanmartin Rozada, Marc
1608           Fournier, Rainer Müller, Yoga Ramalingam and Yves Mettier. #326,
1609           #373, #653, #828
1610         * collectd: A use-after-free has been fixed in the "parse_value()"
1611           function. Thanks to Matthias Urlichs.
1612         * collectd: Fix carriage return sign in types_list Thanks to Marc
1613           Fournier and @NsLib.
1614         * collectd: Fix programming error in src/configfile.c. Thanks to
1615           Wilfried Goesgens.
1616         * collectd: An off-by-one error has been fixed in the
1617           "strstripnewline()" function. Patch by Florian Forster.
1618         * collectd: Use the complain mechanism to report filter chain write
1619           failures. Thanks to Sebastian Harl.
1620         * collectd: Spelling and grammar of error messages have been fixed.
1621           Thanks to Katelyn Perry and Tim Laszlo.
1622         * collectdctl: Fixed buffering issues which caused trouble on AIX and
1623           Solaris. Thanks to Yoga Ramalingam.
1624         * Documentation: Details and example about multi-instance filterchain
1625           targets have been added. Thanks to Marc Fournier.
1626         * Documentation: The "CollectStatistics" option of the rrdcached has
1627           been documented. Thanks to Micha Krause. #907
1628         * Documentation: The write_redis has been documented. Thanks to Marc
1629           Fournier.
1630         * Documentation: The "GraphiteSeparateInstances" and
1631           "GraphiteAlwaysAppendDS" options of the amqp have been documented.
1632           Thanks to Marc Fournier.
1633         * Documentation: Documentation of the "AutoLoadPlugin" option has been
1634           improved. Thanks to Florian Forster. #715
1635         * aggregation: "utils_vl_lookup": A race when creating user objects
1636           has been fixed. Thanks to Sebastian Harl. #535
1637         * cpu: Temperature code for Mac&nbsp;OS&nbsp;X has been removed.
1638           Thanks to Florian Forster and Marc Fournier. #22
1639         * cURL, cURL-JSON, cURL-XML and Write HTTP plugins: Call
1640           "curl_global_init()" in the plugins' "init()" callback. Thanks to
1641           Jeremy Katz.
1642         * cURL and memcachec plugins: Fix calculation of gauge, average,
1643           minimum and maximum. Previously, they were calculated from the start
1644           of the daemon, which is not the documented behavior. Thanks to
1645           Florian Forster. #663
1646         * curl-json: A bug, which triggered when two URLs with a long common
1647           prefix were configured, was fixed. Thanks to Marc Fournier. #582
1648         * dbi: Compatibility with new versions of libdbi has been restored.
1649           Thanks to Florian Forster. #950
1650         * Exec, UnixSock plugins: Fix parsing of the "time" option of the
1651           "PUTNOTIF" command. Thanks to Adrian Miron. #477
1652         * ipmi: A conflict with the java over the "SIGUSR2" signal has been
1653           fixed. Thanks to Vincent Bernat. #114
1654         * java: Conversion from Java's time representation to collectd's
1655           representation has been fixed. Thanks to Manuel Luis Sanmartín
1656           Rozada.
1657         * java: Make sure "cjni_thread_detach()" is called on all paths.
1658           Thanks to Florian Forster.
1659         * LogFile and SysLog plugins: Avoid total silence in case of a
1660           misconfiguration. Thanks to Marc Fournier and Wilfried Goesgens.
1661         * network: Support for recent versions of gcrypt has been added.
1662           Thanks to Vincent Bernat. #632
1663         * network: Robustness of the client connecting behavior has been
1664           improved. Thanks to Florian Forster. #627
1665         * python: Don't create empty "meta_data_t" objects. Thanks to Florian
1666           Forster. #716
1667         * python: Fix Py list length check in "cpy_build_meta()". Thanks to
1668           Yoga Ramalingam.
1669         * python: The "interval" member was fixed to export seconds as a
1670           double. Thanks to Justin Burnham.
1671         * RRDtool and RRDCacheD plugins: A memory leak when creating RRD files
1672           has been fixed. Thanks to Yves Mettier. #661
1673         * snmp: Fix a memory leak. Thanks to Marc Fournier and Pierre-Yves
1674           Ritschard. #610, #804
1675         * statsd: Support for samplerates in timer metrics was added. Thanks
1676           to John Leach. #461
1677         * swap: Fix behavior under OpenVZ by making "cached" optional. Thanks
1678           to Florian Forster. #733
1679         * threshold: Population of the "time" field in notifications has been
1680           added. Thanks to Manuel Luis Sanmartín Rozada.
1681         * libvirt: Only gather stats for running domains. Thanks to Ruben
1682           Kerkhof.
1683         * lvm: An issue with Volume Groups (VGs) without Logical Volumes (LVs)
1684           has been fixed. Thanks to Jan Kundrát.
1685         * write_graphite: Escape characters not supported by Graphite. Thanks
1686           to Pierre-Yves Ritschard and Marc Fournier.
1687         * write_http: Make callback names context-dependent. Thanks to Marc
1688           Fournier. #821
1689         * write_redis: A formatting bug, which resulted in totally unusable
1690           numbers being transmitted to Redis, was fixed. Thanks to Marc
1691           Fournier.
1692         * write_riemann: Receive acknowledge message when using TCP. Thanks to
1693           John-John Tedro.
1694
1695 2014-01-26, Version 5.4.1
1696         * amqp plugin: Add support for RabbitMQ 0.4.x to avoid compiler
1697           warnings. Thanks to Sebastian Harl for implementing this.
1698         * apache / network plugins: Improved initialization order hopefully
1699           resolved gcrypt initialization problems.
1700         * aquaero plugin: The type used to submit fan utilization was fixed.
1701           Thanks to Alex Deymo for the patch.
1702         * cgroups plugin: A small memory leak was fixed. Checking the existence
1703           of a mount option without a value was fixed. More permissive parsing
1704           of the cpuacct.stats file fixes support for some versions of Linux.
1705           Thanks to Marc Fournier for bug reports and patches.
1706         * curl plugin: Fix <Match> blocks without an instance. Thanks to
1707           Alexander Golovko for reporting and Sebastian Harl for fixing this.
1708         * curl_json plugin: Potentially invalid memory access has been
1709           sanitized. Thanks to Jim Radford for his patch.
1710         * interface plugin: Fix behavior under FreeBSD 10: Reporting of
1711           per-address statistics caused duplicate updates to the same metric.
1712           Thanks to demon / @trtrmitya for the patch.
1713         * write_graphite plugin: Use TCP to connect to Graphite by default. The
1714           default changed from TCP to UDP between 5.3.1 and 5.4.0, which is a
1715           regression. Thanks to Marc Fournier for fixing this. Reconnect
1716           behavior was improved. Thanks to Michael Hart for his patch.
1717         * zfs_arc plugin: Collect "allocated" and "stolen" on FreeBSD only.
1718
1719 2013-08-18, Version 5.4.0
1720         * collectd: The "LoadPlugin" config option no longer attempts to load
1721           plugins twice. If more than one "LoadPlugin" statement or block is
1722           encountered, only the first will have any effect.
1723         * collectd: The "AutoLoadPlugin" option allows to automatically load
1724           plugins for which a configuration is found.
1725         * collectd: The "WriteQueueLimitHigh" and "WriteQueueLimitLow" options
1726           allow collectd to drop values when under stress, to avoid running out
1727           of memory. Thanks to Yves Mettier for his patch.
1728         * amqp plugin: The "GraphiteSeparateInstances" and
1729           "GraphiteAlwaysAppendDS" options have been added. Thanks to Laurent
1730           for the patch.
1731         * aquaero plugin: This new plugin reads various metrics, e.g. fan
1732           speeds and temperatures, from Aquaero 5, a fan and water cooling
1733           control panel. Thanks to Alex Deymo for his patch.
1734         * curl plugin: The "MeasureResponseCode" option has been added. Thanks
1735           to Jan Matějka for his patch.
1736         * curl_json plugin: Support for UNIX domain sockets and array wildcards
1737           has been added. Thanks to Jim Radford for his patch.
1738         * curl_xml plugin: Support for long URLs has been improved.
1739         * cgroups plugin: This new plugin collects CPU accounting information
1740           for processes in a cgroup. Thanks to Michael Stapelberg for his patch.
1741         * df plugin: The "ValuesAbsolute" and "ValuesPercentage" options have
1742           been added. Thanks to Vedran Bartonicek for the patch.
1743         * exec plugin: Do UID / GID lookups before forking. This should prevent
1744           a race condition in the NSS library. Thanks to Ceri Storey for the
1745           patch.
1746         * lvm plugin: This new plugin collects size information from Linux'
1747           Logical Volume Manager (LVM). Thanks to Chad Malfait for his work.
1748         * memcached plugin: Support for increment and decrement counts has been
1749           added. Thanks to Blake Matheny for the patch.
1750         * mic plugin: This new plugin collects CPU and memory usage, power
1751           consumption and temperatures of Intel's Many-Integrated-Core (MIC)
1752           architecture, such as Xeon Phi cards. Thanks to Evan Felix for his
1753           work.
1754         * netlink plugin: This plugin has been converted to use the supported
1755           "libmnl" library. Thanks to Andreas Henriksson for his patch.
1756         * nginx plugin: Collection of accepted and handled connections has been
1757           added. Thanks to Patrick Shan for his patch.
1758         * sigrok plugin: This new plugin collects metrics from sigrok, a signal
1759           processing framework reading various hardware devices, from light
1760           meters to spectrum analyzers. Thanks to Bert Vermeulen for his patch.
1761         * statsd plugin: This new plugin listens to a UDP socket and reads
1762           metrics in the StatsD format.
1763         * varnish plugin: Many additional metrics have been added. Thanks to
1764           Nick Stenning for his patch.
1765         * write_graphite plugin: Support for "UDP" has been added. Thanks to
1766           Javier Maestro for his patch.
1767         * write_riemann plugin: The "TTLFactor" option has been added.
1768         * zfs_arc plugin: Support for FreeBSD has been added. Thanks to Xin Li
1769           for his patch.
1770
1771 2015-02-26, Version 5.3.2
1772         * Build system: Numerous fixes. Thanks to Bjørn Nordbø, Jim Radford,
1773           KOMEDA Shinji, Lauri Tirkkonen, Manuel Luis Sanmartin Rozada, Marc
1774           Fournier, Rainer Müller, Yoga Ramalingam and Yves Mettier. #326,
1775           #373, #653, #828
1776         * collectd: A use-after-free has been fixed in the "parse_value()"
1777           function. Thanks to Matthias Urlichs.
1778         * collectd: Fix carriage return sign in types_list Thanks to Marc
1779           Fournier and @NsLib.
1780         * collectd: Fix programming error in src/configfile.c Thanks to
1781           Wilfried Goesgens.
1782         * collectd: An off-by-one error has been fixed in the
1783           "strstripnewline()" function. Patch by Florian Forster.
1784         * collectd: Use the complain mechanism to report filter chain write
1785           failures. Thanks to Sebastian Harl.
1786         * collectd: Spelling and grammar of error messages have been fixed.
1787           Thanks to Katelyn Perry and Tim Laszlo.
1788         * collectdctl: Fixed buffering issues which caused trouble on AIX and
1789           Solaris. Thanks to Yoga Ramalingam.
1790         * Documentation: Details and example about multi-instance filterchain
1791           targets have been added. Thanks to Marc Fournier.
1792         * Documentation: The "CollectStatistics" option of the rrdcached has
1793           been documented. Thanks to Micha Krause. #907
1794         * Documentation: The write_redis has been documented. Thanks to Marc
1795           Fournier.
1796         * Documentation: The synopsis of the threshold has been fixed. Thanks
1797           to Fabien Wernli.
1798         * Documentation: The "GraphiteSeparateInstances" and
1799           "GraphiteAlwaysAppendDS" options of the amqp have been documented.
1800           Thanks to Marc Fournier.
1801         * aggregation: "utils_vl_lookup": A race when creating user objects
1802           has been fixed. Thanks to Sebastian Harl. #535
1803         * cpu: Temperature code for Mac&nbsp;OS&nbsp;X has been removed.
1804           Thanks to Florian Forster and Marc Fournier. #22
1805         * csv: A regression which would lead to the "DataDir" option to be
1806           ignored has been fixed. Thanks to Manuel Luis Sanmartin Rozada.
1807         * curl, curl-json, curl-xml and write_http plugins: Call
1808           "curl_global_init()" in the plugins' "init()" callback. Thanks to
1809           Jeremy Katz.
1810         * curl and memcachec plugins: Fix calculation of gauge, average,
1811           minimum and maximum. Previously, they were calculated from the start
1812           of the daemon, which is not the documented behavior. Thanks to
1813           Florian Forster. #663
1814         * dbi plugin: Compatibility with new versions of libdbi has been
1815           restored. Thanks to Florian Forster. #950
1816         * exec, unixsock plugins: Fix parsing of the "time" option of the
1817           "PUTNOTIF" command. Thanks to Adrian Miron. #477
1818         * java: Conversion from Java's time representation to collectd's
1819           representation has been fixed. Thanks to Manuel Luis Sanmartín
1820           Rozada.
1821         * ipmi: A conflict with the java over the "SIGUSR2" signal has been
1822           fixed. Thanks to Vincent Bernat. #114
1823         * java: Make sure "cjni_thread_detach()" is called on all paths.
1824           Thanks to Florian Forster.
1825         * logfile and syslog plugins: Avoid total silence in case of a
1826           misconfiguration. Thanks to Marc Fournier and Wilfried Goesgens.
1827         * memcached: Connecting to a UNIX socket has been fixed. Thanks to Jim
1828           Radford.
1829         * network: Support for recent versions of gcrypt has been added.
1830           Thanks to Vincent Bernat. #632
1831         * network: Robustness of the client connecting behavior has been
1832           improved. Thanks to Florian Forster. #627
1833         * python: Don't create empty "meta_data_t" objects. Thanks to Florian
1834           Forster. #716
1835         * python: Fix Py list length check in "cpy_build_meta()". Thanks to
1836           Yoga Ramalingam.
1837         * python: The "interval" member was fixed to export seconds as a
1838           double. Thanks to Justin Burnham.
1839         * replace and set targets: Fix error message. Thanks to Marc Fournier.
1840           #448
1841         * rrdtool and rrdcached plugins: Honor the "DataDir" config option;
1842           this fixes a regression. Thanks to Florian Forster. #380
1843         * rrdtool and rrdcached plugins: A memory leak when creating RRD files
1844           has been fixed. Thanks to Yves Mettier. #661
1845         * snmp: Fix a memory leak. Thanks to Marc Fournier and Pierre-Yves
1846           Ritschard. #610, #804
1847         * swap: Fix behavior under OpenVZ by making "cached" optional. Thanks
1848           to Florian Forster. #733
1849         * threshold: Population of the "time" field in notifications has been
1850           added. Thanks to Manuel Luis Sanmartín Rozada.
1851         * libvirt: Only gather stats for running domains. Thanks to Ruben
1852           Kerkhof.
1853         * write_graphite: Escape characters not supported by Graphite. Thanks
1854           to Pierre-Yves Ritschard and Marc Fournier.
1855         * write_http: Make callback names context-dependent. Thanks to Marc
1856           Fournier. #821
1857         * write_riemann: Receive acknowledge message when using TCP. Thanks to
1858           John-John Tedro.
1859
1860 2013-07-13, Version 5.3.1
1861         * Documentation: Various fixes.
1862         * Configuration: Fix error handling: Errors in included files were
1863           ignored, causing configuration mistakes to go unnoticed.
1864         * dns plugin: Don't abort when PCAP returns an error.
1865         * modbus plugin: The reconnection strategy was improved, fixing a
1866           segfault in the libmodbud library. Thanks to Stefan Nickl and
1867           Fabien Wernli for their patches.
1868         * mysql plugin: The notification about a newly running MySQL slave
1869           thread has been fixed. Thanks to Joaquín Cuenca Abela for the patch.
1870         * snmp plugin: A build issue has been fixed (C99 mixed declaration).
1871           The end-of-tree check has been improved by Pierre-Yves Ritschard.
1872         * threshold plugin: Handling of the "Interesting" configuration option
1873           has been fixed. Thanks to Björn for the patch.
1874         * write_riemann plugin: A memory leak has been fixed. Thanks to Dave
1875           Cottlehuber for reporting it.
1876
1877 2013-04-09, Version 5.3.0
1878         * collectd: The "Include" statements can now be limited to include
1879           only matching files in a directory. Thanks to Sebastian Harl for his
1880           patch.
1881         * collectd: Dispatches / writes are now handled by a thread pool. This
1882           improves reliability and throughput for instances configured to act
1883           as a "server". Thanks to Sebastian Harl and Dan Fandrich for
1884           reviewing this change and fixing bugs.
1885         * aggregation plugin: Selection of value lists is now possible using
1886           regular expressions. Parts of the identifier of the resulting metric
1887           can now be set via the configuration file.
1888         * apcups plugin: The "ReportSeconds" option has been implemented.
1889         * curl* plugins: Support for POST requests and custom request headers
1890           has been added. Thanks to Dan Fandrich for his patch.
1891         * curl_xml plugin: Support for XML namespaces has been added. Thanks
1892           to Dan Fandrich for his patch.
1893         * dbi plugin: Support for numeric options has been added. The
1894           "Host" option has been added. Thanks to Daniel Hilst for his patch.
1895         * disk plugin: Support for systems with >256 has been fixed. Thanks to
1896           Greg Mason for his patch.
1897         * libvirt plugin: Support for memory allocation has been added. Thanks
1898           to Johan Wirén for his patch.
1899         * netapp plugin: Support for "SnapVault", "VFiler" and deduplication /
1900           compression and quota metrics. Thanks to Sebastian Harl for his
1901           patches and teamix GmbH for sponsoring this work.
1902         * postgresql plugin: The reconnection logic has been improved. Thanks
1903           to Sebastian Harl for his patches.
1904         * rrdtool, rrdcached plugins: The "CreateFilesAsync" option has been
1905           implemented. When enabled, new RRD files will be created
1906           asynchronously, which improved throughput of "server" instances.
1907           Many thanks to Yves Mettier for all his input and code.
1908         * tail_csv plugin: This new plugins allows to read metrics from CSV
1909           files, such as Snort's statistics file. Thanks to Kris Nielander for
1910           his patch.
1911         * write_mongodb plugin: Authentication options have been added.
1912         * write_riemann plugin: This new plugin allows sending metrics to
1913           Riemann, a stream processing and alerting tool. Big thanks to
1914           Pierre-Yves Ritschard for his work.
1915
1916 2013-04-08, Version 5.2.2
1917         * Build system: A bad interaction between the Java detection code and
1918           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
1919           Installation of the Perl bindings has been improved / fixed. Thanks
1920           to Sebastian Harl for his patch.
1921         * collectd: Fixed read callback scheduling at startup.
1922         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
1923           write_http plugins: Portability fixes, protection from infinite
1924           redirect loops, improved error handling and incorrect dereferences
1925           have been fixed. Most of these are related to the cURL library.
1926           Thanks to Dan Fandrich for his patches.
1927         * logfile plugin: Flush the output file handle. This works around
1928           caching when logging to STDOUT and redirecting into a file. Thanks
1929           to Nathan Huff for the patch.
1930         * mysql plugin: Fix a memory leak in the error handling. Thanks to
1931           Tomas Doran for his patch.
1932         * netapp plugin: Fix the interval with which values are dispatched.
1933         * network plugin: Build issues under FreeBSD and initialization have
1934           been fixed. Thanks to Ed Schouten for his patch.
1935         * nfs plugin: A compilation problem has been fixed.
1936         * notify_email plugin: Add a character set to the mail header. Thanks
1937           to Manuel Cissé for his patch.
1938         * pf plugin: Build issues have been fixed.
1939         * postgresql plugin: Build issues have been fixed.
1940         * rrdcached plugin: Connect to the daemon from the read callback.
1941         * snmp plugin: Matching of SNMP subtrees has been improved. Thanks to
1942           "jkrabbe" for the patch.
1943         * thermal plugin: The initialization of dispatched value lists has
1944           been fixed. Thanks to Markus Knetschke for his patch.
1945         * unixsock plugin: Parsing of options with an underscore, e.g.
1946           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
1947           patch.
1948
1949 2013-01-27, Version 5.2.1
1950         * Build system: "make distcheck" has been fixed. Build fixes Solaris
1951           and systems without gcrypt. Thanks to Yves Mettier for his patches.
1952         * collectd: The complaint mechanism was fixed. It reported messages
1953           more frequently than intended.
1954         * collectd-tg: A manual page has been added.
1955         * dns plugin: Build issues on FreeBSD have been fixed. Thanks to
1956           Ed Schouten for his patch.
1957         * ethstat plugin: Fix the "Map" config option. An incorrectly used
1958           character pointer may lead to a segmentation fault.
1959         * network plugin: Build issues on FreeBSD have been fixed. Thanks to
1960           Ed Schouten for his patch.
1961         * postgresql plugin: A memory leak in the writing code has been fixed.
1962           A use-after-free issue that happened when more than one database was
1963           configured was fixed. Thanks to Sebastian Harl for fixing these
1964           problems.
1965         * redis plugin: A build failure has been fixed. Thanks to Pierre-Yves
1966           Ritschard for his patch.
1967         * varnish plugin: Fix a problem with instances without name.
1968         * write_graphite plugin: A regression which rendered the
1969           "SeparateInstances" and "AlwaysAppendDS" options unusable has been
1970           fixed. A failed assertion when using types with many data sources
1971           has been fixed. Improve reporting of connection errors to not spam
1972           log files too much. Thanks to Pierre-Yves Ritschard for reporting
1973           the logging problem.
1974         * zfs_arc plugin: Fix the type used for mutex misses. Thanks to Yves
1975           Mettier for reporting this bug.
1976
1977 2012-11-17, Version 5.2.0
1978         * collectd: The performance of the LISTVAL command has been improved.
1979           Thanks to Yves Mettier for the patch.
1980         * collectd: The possibility to configure the collection interval on a
1981           per-plugin basis has been added. Huge thanks to Sebastian Harl for
1982           his work.
1983         * collectd-tg: This new binary allows to generate random but real
1984           looking collectd network traffic. This can be used to load-test new
1985           plugin, for example.
1986         * libcollectdclient: Code for constructing and sending network packets
1987           in the binary format has been added.
1988         * aggregation plugin: This new plugin allows to aggregate multiple
1989           value lists into one.
1990         * amqp and write_http plugins: Meta data is now included in the JSON
1991           output format. Thanks to Mark Wong for the patch.
1992         * amqp plugin: Support for "Graphite" output has been added. Thanks to
1993           Thomas Meson for the patch.
1994         * contextswitch plugin: Support for AIX has been added. Thanks to
1995           Manuel Rozada for his patch.
1996         * disk plugin: The "UseBSDName" config option has been added to the
1997           Mac OS X version.
1998         * GenericJMX plugin: Automatically determine the host name if it isn't
1999           configured.
2000         * libvirt plugin: The "number" interface format has been added. Thanks
2001           to "Davide Guerri" for the patch.
2002         * memcached plugin: Support for multiple connections has been added.
2003           Thanks to Nicolas Szalay for the patch.
2004         * ntpd plugin: The "IncludeUnitID" config option has been added. The
2005           behavior when a peer is unreachable has been improved. Thanks to
2006           Johan Kiviniemi for the patches.
2007         * oracle plugin: The "Host" config option has been added.
2008         * pf plugin: This new plugin allows to collect statistics from BSD's
2009           packet filter "pf". Thanks to Pierre-Yves Ritschard and Stefan Rinkes
2010           for their work.
2011         * postgresql plugin: The "Instance" config option has been added.
2012           Support for writing values to a PostgreSQL database has been added.
2013           Thanks to Sebastian Harl for the patches.
2014         * processes plugin: Support for Solaris has been added. Thanks to
2015           Cosmin Ioiart for the patch.
2016         * redis plugin: Support for authenticating via password has been added.
2017           Thanks to biancalana for the patch.
2018         * rrdcached plugin: The "HeartBeat", "RRARows", "RRATimespan",
2019           "StepSize" and "XFF" config options have been added.
2020         * swap plugin: The "ReportBytes" config option has been added. The AIX
2021           version now also exports "reserved" pages and swap-in / swap-out
2022           "traffic". Thanks to Manuel Rozada for the patch.
2023         * tcpconns plugin: Use a netlink socket rather than reading from /proc
2024           for improved performance. Thanks to Michael Stapelberg for the patch.
2025
2026 2013-04-08, Version 5.1.3
2027         * Build system: A bad interaction between the Java detection code and
2028           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
2029         * collectd: Fixed read callback scheduling at startup.
2030         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
2031           write_http plugins: Portability fixes, protection from infinite
2032           redirect loops, improved error handling and incorrect dereferences
2033           have been fixed. Most of these are related to the cURL library.
2034           Thanks to Dan Fandrich for his patches.
2035         * logfile plugin: Flush the output file handle. This works around
2036           caching when logging to STDOUT and redirecting into a file. Thanks
2037           to Nathan Huff for the patch.
2038         * mysql plugin: Fix a memory leak in the error handling. Thanks to
2039           Tomas Doran for his patch.
2040         * netapp plugin: Fix the interval with which values are dispatched.
2041         * network plugin: Build issues under FreeBSD and initialization have
2042           been fixed. Thanks to Ed Schouten for his patch.
2043         * nfs plugin: A compilation problem has been fixed.
2044         * notify_email plugin: Add a character set to the mail header. Thanks
2045           to Manuel Cissé for his patch.
2046         * rrdcached plugin: Connect to the daemon from the read callback.
2047         * snmp plugin: Matching of SNMP subtrees has been improved. Thanks to
2048           "jkrabbe" for the patch.
2049         * thermal plugin: The initialization of dispatched value lists has
2050           been fixed. Thanks to Markus Knetschke for his patch.
2051         * unixsock plugin: Parsing of options with an underscore, e.g.
2052           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
2053           patch.
2054
2055 2013-01-25, Version 5.1.2
2056         * Build system: "make distcheck" has been fixed. Thanks to Yves
2057           Mettier for his patches.
2058         * collectd: The complaint mechanism was fixed. It reported messages
2059           more frequently than intended.
2060         * dns plugin: Build issues on FreeBSD have been fixed. Thanks to
2061           Ed Schouten for his patch.
2062         * ethstat plugin: Fix the "Map" config option. An incorrectly used
2063           character pointer may lead to a segmentation fault.
2064         * network plugin: Build issues on FreeBSD have been fixed. Thanks to
2065           Ed Schouten for his patch.
2066         * varnish plugin: Fix a problem with instances without name.
2067         * write_graphite: Improve reporting of connection errors to not spam
2068           log files too much. Thanks to Pierre-Yves Ritschard for reporting
2069           this problem.
2070         * zfs_arc plugin: Fix the type used for mutex misses. Thanks to Yves
2071           Mettier for reporting this bug.
2072
2073 2012-11-11, Version 5.1.1
2074         * collectd: Create new directories with mode 0777 and let umask remove
2075           unwanted permission bits.
2076         * collectd: Build issues have been fixed.
2077         * collectd: An incorrect assertion has been fixed in some common code
2078           for Solaris. This should resolve pseudo-random assertion failures
2079           under Solaris. Thanks to Jeff Blane for his help debugging this.
2080         * collectd: A couple of memory leaks through PThread thread attributes
2081           have been fixed. Thanks to Gerrie Roos for fixing these.
2082         * collectdctl: Fix PUTVAL for data sets with multiple data sources.
2083           Thanks to Cyril Feraudet for reporting this problem.
2084         * contrib/migrate-4-5.px: Handle to "df" to "df_complex" conversion
2085           correctly.
2086         * apcups plugin: Improve the reconnect behavior.
2087         * curl_xml plugin: The "Host" setting was silently ignored. Thanks to
2088           Fabien Wernli for fixing this.
2089         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
2090           reported twice. Thanks to Brune Prémont for fixing this.
2091         * disk plugin: Fix incorrect computation of read and write latency (the
2092           "disk_time" type). Previously, the numbers reported where too small
2093           by a factor of "interval", e.g. when the interval is set to 10
2094           seconds, the values were too low by a factor of 10. Thanks to Manuel
2095           Sanmartin for reporting this problem.
2096         * dns plugin: A build issue under Solaris has been fixed. A erroneous
2097           define that could lead to the reporting of bad data has been fixed by
2098           Daniel Sutto.
2099         * ethstat plugin: An off-by-one error and potential use of
2100           uninitialized memory has been fixed. Thanks to Mark Voelker for
2101           reporting these problems.
2102         * memcachec plugin: A bug in the configuration handling has been fixed.
2103           Thanks to Pascal Hofmann for fixing this issue.
2104         * mysql plugin: Fix a bug when registering multiple databases. Thanks
2105           to Sebastian Harl for fixing this.
2106         * netapp plugin: Correctly close the connection on communication
2107           errors.
2108         * netlink plugin: The function used to query statistics has been
2109           changed to be more in line with iproute2's behavior. Thanks to
2110           "KIvosak" for the patch.
2111         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
2112           Chris Lundquist for his patch.
2113         * oracle plugin: Error messages have been improved.
2114         * ping plugin: Don't enter the exponential back-off mode when
2115           ping_send() fails. This should make recovery after a network failure
2116           much faster.
2117         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
2118           and Sven Trenkel for fixing this.
2119         * redis plugin: Fix a compilation problem on FreeBSD. Thanks to
2120           "biancalana" for the fix.
2121         * rrdtool plugin: Fix an out-of-bounds array access when printing a
2122           warning message. Thanks to Will Hawkins for fixing this bug.
2123         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
2124           added. Support for more complex / unusual MIBs / subtrees has been
2125           added. Thanks to Mark Juric to test the changes and point out these
2126           problems.
2127         * varnish plugin: Support for multiple instances of Varnish 3 has been
2128           fixed. Thanks to Jonathan Huot for the patch.
2129         * write_mongodb plugin: Add compatibility with libmongo 0.6.0 and
2130           later. Thanks to Chris Lundquist for this patch.
2131
2132 2012-04-01, Version 5.1.0
2133         * Build system, iptables plugin: The shipped version of libiptc has
2134           been removed.
2135         * collectd-nagios: A list of value lists can now be queried using
2136           "-n LIST". Thanks to Sebastian Harl for his patches.
2137         * bind plugin: The "ParseTime" option has been added. It allows to use
2138           the system time rather than the time reported by BIND.
2139         * curl, memcachec, tail plugins: The "ExcludeRegexp" option has been
2140           added. Thanks to Peter Warasin for his initial patch.
2141         * ethstat plugin: The new "ethstat" plugin reads performance statistics
2142           directly from ethernet cards. Thanks to Cyril Feraudet for his patch.
2143         * GenericJMX plugin: Support for querying MBean "Operations" (in
2144           addition to "Attributes") has been added. Thanks to Pierre-Yves
2145           Ritschard for his patch.
2146         * irq plugin: The selection / ignore code now uses the default
2147           ignorelist infrastructure, providing the standard feature set, e.g.
2148           regex matching.
2149         * md plugin: The new "md" plugin reports the number of disks in various
2150           states in Linux software RAID devices. Thanks to Michael Hanselmann
2151           for his patch.
2152         * modbus plugin: Support for signed integer register types has been
2153           added.
2154         * nfs plugin: Support for Solaris has been added. Thanks to Cosmin
2155           Ioiart for his patch.
2156         * numa plugin: The new "numa" plugin reports statistics of the
2157           Non-Uniform Memory Access (NUMA) subsystem of Linux.
2158         * processes plugin: Various fixes for the FreeBSD implementation.
2159           Thanks to Phil Kulin for his patch.
2160         * rrdcached plugin: Passing flushes to the caching daemon has been
2161           added.
2162         * sensors plugin: The initialization code has been improved. Thanks to
2163           Henrique de Moraes Holschuh for his patch.
2164         * swap plugin: The "ReportByDevice" option has been added.
2165         * syslog plugin: Support for writing notifications has been added.
2166           Thanks to Fabien Wernli for his patch.
2167         * tcpconns plugin: Support for AIX has been added. Thanks to Manuel
2168           Luis Sanmartín Rozada for his patch.
2169         * threshold plugin: The "PersistOK" option has been added. Thanks to
2170           Aaron Brady for his patch.
2171         * varnish plugin: Support for Varnish 3.0 has been added. Thanks to
2172           Jérôme Renard for his patches.
2173         * write_mongodb plugin: The new "write_mongodb" plugin writes value
2174           lists to MongoDB, a shema-less database. Thanks to Akkarit Sangpetch
2175           and Chris Lundquist for their work.
2176         * write_graphite plugin: The new "write_graphite" plugin writes value
2177           lists to Carbon, the storage layer of the Graphite time-series
2178           database. Thanks to Scott Sanders and Pierre-Yves Ritschard for their
2179           work.
2180         * zfs_arc plugin: Several new statistics have been added. Thanks to
2181           Aurelien Rougemont for his patches.
2182         * scale target: Support for scaling specific data sources only has been
2183           added. Thanks to Gerrie Roos for his patch.
2184
2185 2012-11-11, Version 5.0.5
2186         * collectd: Create new directories with mode 0777 and let umask remove
2187           unwanted permission bits.
2188         * collectd: Build issues have been fixed.
2189         * collectd: An incorrect assertion has been fixed in some common code
2190           for Solaris. This should resolve pseudo-random assertion failures
2191           under Solaris. Thanks to Jeff Blane for his help debugging this.
2192         * collectd: A couple of memory leaks through PThread thread attributes
2193           have been fixed. Thanks to Gerrie Roos for fixing these.
2194         * collectdctl: Fix PUTVAL for data sets with multiple data sources.
2195           Thanks to Cyril Feraudet for reporting this problem.
2196         * contrib/migrate-4-5.px: Handle to "df" to "df_complex" conversion
2197           correctly.
2198         * apcups plugin: Improve the reconnect behavior.
2199         * curl_xml plugin: The "Host" setting was silently ignored. Thanks to
2200           Fabien Wernli for fixing this.
2201         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
2202           reported twice. Thanks to Brune Prémont for fixing this.
2203         * disk plugin: Fix incorrect computation of read and write latency (the
2204           "disk_time" type). Previously, the numbers reported where too small
2205           by a factor of "interval", e.g. when the interval is set to 10
2206           seconds, the values were too low by a factor of 10. Thanks to Manuel
2207           Sanmartin for reporting this problem.
2208         * dns plugin: A build issue under Solaris has been fixed. A erroneous
2209           define that could lead to the reporting of bad data has been fixed by
2210           Daniel Sutto.
2211         * memcachec plugin: A bug in the configuration handling has been fixed.
2212           Thanks to Pascal Hofmann for fixing this issue.
2213         * mysql plugin: Fix a bug when registering multiple databases. Thanks
2214           to Sebastian Harl for fixing this.
2215         * netapp plugin: Correctly close the connection on communication
2216           errors.
2217         * netlink plugin: The function used to query statistics has been
2218           changed to be more in line with iproute2's behavior. Thanks to
2219           "KIvosak" for the patch.
2220         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
2221           Chris Lundquist for his patch.
2222         * oracle plugin: Error messages have been improved.
2223         * ping plugin: Don't enter the exponential back-off mode when
2224           ping_send() fails. This should make recovery after a network failure
2225           much faster.
2226         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
2227           and Sven Trenkel for fixing this.
2228         * redis plugin: Fix a compilation problem on FreeBSD. Thanks to
2229           "biancalana" for the fix.
2230         * rrdtool plugin: Fix an out-of-bounds array access when printing a
2231           warning message. Thanks to Will Hawkins for fixing this bug.
2232         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
2233           added. Support for more complex / unusual MIBs / subtrees has been
2234           added. Thanks to Mark Juric to test the changes and point out these
2235           problems.
2236
2237 2012-04-01, Version 5.0.4
2238         * Build system: Fix the use of a libltdl macro. Thanks to Clemens Lang
2239           for fixing this. Adresses some issues with building the iptables
2240           plugin under Gentoo.
2241         * libcollectdclient: A memory leak in the lcc_getval() function has
2242           been fixed. Thanks to Jason Schmidlapp for finding and fixing this
2243           issue.
2244         * bind plugin: The use of 'QType" types has been fixed.
2245         * df plugin: Fixed compiler issue under Mac OS X 10.7.
2246         * conntrack plugin: Support zero as legitimate value. Thanks to Louis
2247           Opter for his patch.
2248         * memcached plugin: Increased the size of a static buffer, which was
2249           truncating status messages form memcached. Thanks to Timon for the
2250           patch.
2251         * network plugin: Forwarding of notifications has been disabled. This
2252           was a contition not checked for before, which may retult in an
2253           endless loop.
2254         * processes plugin: Support for process names with spaces has been
2255           added to the Linux implementation. Thanks to Darrell Bishop for his
2256           patch.
2257         * perl plugin: A race condition in several callbacks, including log and
2258           write callbacks, has been fixed. Thanks to "Rrpv" for reporting this
2259           bug.
2260         * snmp plugin: A bug when casting unsigned integers to gauge values has
2261           been fixed: Unsigned integers would be cast to a signed integer and
2262           then to a gauge, possibly resulting in a negative value.
2263         * tcpconns plugin: Compilation with newer versions of the FreeBSD
2264           runtime has been fixed.
2265
2266 2012-02-19, Version 5.0.3
2267         * Build system: Fix problems when building the ipvs and iptables
2268           plugins. Thanks to Sebastian Harl for his patch. A bashism in the
2269           version-gen.sh script has been fixed. Thanks to Jo-Philipp Wich for
2270           his patch.
2271         * csv and rrdtool plugins: Print a more helpful error message when the
2272           DataDir is a symlink pointing to a non-existing location. Thanks to
2273           Jonathan Nieder for his patch.
2274         * exec plugin: Fix a problem when using select(2) to read from file
2275           handles. Thanks to Gerrie Roos for his patch.
2276         * network plugin: An incorrect error message in the handling of the
2277           "Interface" configuration option has been fixed. Thanks to Gerrie
2278           Roos for his patch.
2279         * oracle plugin: A potential endless loop in the error handling has
2280           been fixed.
2281         * python plugin: A crash bug in the configuration handling has been
2282           fixed. Thanks to Sven Trenkel for his patch.
2283         * interfaces plugin: The change which was supposed to ignore "bogus"
2284           interfaces has been reverted, since it ignored legit interfaces, such
2285           as bonding pseudo-devices as well.
2286
2287 2012-01-21, Version 5.0.2
2288         * curl_xml plugin: Fix handling of file:// and other URLs (which don't
2289           follow HTTP status codes). Thanks to Fabien Wernli for his patch!
2290         * df plugin: Fix handling of negative "available" counts. This can
2291           occur with some file systems, for example UFS. Thanks to Toni Ylenius
2292           for his patch.
2293         * interface plugin: "mac" interfaces are now ignored on Solaris. These
2294           pseudo-interfaces occur multiple times, causing warnings. Also switch
2295           to 64-bit counters on Solaris, improving overflow behavior for
2296           high-speed interfaces. Thanks to Eddy Geez and Fabien Wernli for
2297           their patches.
2298         * memory plugin: Account kernel and unused memory under Solaris. Thanks
2299           to Fabien Wernli for his patch.
2300         * network plugin: A bug in the interaction between the Network plugin
2301           and filter chains has been fixed: When a filter modified a field such
2302           as the hostname, subsequent values in the same network packets could
2303           have ended up using the modified name rather than the original name.
2304           Thanks to Sebastian Harl for identifying the problem.
2305         * oracle plugin: A memory leak has been fixed in the parameter handling.
2306         * python plugin: A memory leak has been fixed. Thanks to Sven Trenkel
2307           for fixing this bug!
2308
2309 2011-10-07, Version 5.0.1
2310         * collectd: A mutex leak has been fixed in the meta data code. Thanks
2311           to Rafal Lesniak for his patch.
2312         * collectd: Compatibility fixes for GCC 4.6 have been applied. Thanks
2313           to Peter Green for his patch.
2314         * csv plugin: The line buffer size has been increased. Thanks to Colin
2315           McCabe for the patch.
2316         * curl_json plugin: Don't use the "parent" node to build the type
2317           instance, if it is empty. Compatibility with libyajl 2 has been
2318           added. Thanks to "spupykin" of the Arch Linux project for the initial
2319           code. Formatting of time has been fixed in the JSON module.
2320         * exec plugin: Fix the timestamp value passed to notification scripts.
2321           Thanks to Alexander Kovalenko for fixing this.
2322         * iptables plugin: Fix linking with some versions of libiptc.
2323         * irq plugin: Fix support for interrupts under Linux. The old code
2324           assumed that interrupts have a numeric value -- this is no longer
2325           true for Linux. Thanks to Bostjan Skufca for implementing this.
2326         * notify_desktop plugin: Compatibility with libnotify 0.7 has been
2327           added. Thanks to Samuli Suominen for his patch.
2328         * processes plugin: Fix handling of regular expressions containing
2329           spaces. Thanks for Sebastian Harl for fixing this.
2330         * rrdtool, rrdcached plugins: Improve precision of the XFF parameter.
2331           Previously, values like 0.999 would have been rounded to 1.0. Thanks
2332           to Francois-Xavier Bourlet for fixing this.
2333         * varnish plugin: Fix data type handling of some metrics. Some values
2334           were submitted as gauge even though they were derives.
2335         * Various plugin: Set a multi-threading flag in libcurl. Thanks to Mike
2336           Flisher for the fix.
2337
2338 2011-03-28, Version 5.0.0
2339         * collectd: The "FQDNLookup" option is now enabled by default.
2340         * collectd: The internal representation of time has been changed to
2341           allow a higher accuracy than one second.
2342         * collectdcmd: This new command line utility can send various commands
2343           to collectd using the UnixSock plugin. Thanks to Håkon Dugstad
2344           Johnsen and Sebastian Harl for their code.
2345         * collectd-nagios: The "-m" option has been implemented (treat NaNs as
2346           critical).
2347         * collectd-tg: Traffic generator creating bogus network traffic
2348           compatible to the Network plugin. This utility can be used to
2349           stress-test new write plugins and collectd in general.
2350         * libcollectdclient: Creating and sending network packets has been
2351           added to the collectd client library.
2352         * All data sets: The data source name of all data sets with exactly
2353           one data source has been changed to "value".
2354         * All plugins: All "counter" data sources have been converted to
2355           "derive" data sources. All plugins now use "derive" by default, but
2356           plugins such as the network plugin can still handle "counter", of
2357           course. The minimum value of all derive data sources is zero, the
2358           maximum value is unspecified.
2359         * amqp plugin: The new AMQP plugin can send data to and receive data
2360           from an AMQP broker. Thanks to Sebastien Pahl for his code.
2361         * apache plugin: Backwards compatibility code has been removed.
2362           Support for the IBM HTTP Server has been added. Thanks to Manuel
2363           Luis Sanmartín Rozada for his patch.
2364         * contextswitch plugin: Support for sysctlbyname(3) has been added.
2365           Thanks to Kimo Rosenbaum for his patch.
2366         * df plugin: The default behavior has been changed to be equivalent to
2367           the "ReportReserved" behavior of v4.
2368         * dns plugin: Improved RFC 1035 name parsing has been imported from
2369           "dnstop".
2370         * exec plugin: Backwards compatibility code has been removed.
2371         * GenericJMX plugin: The "InstancePrefix" option has been added to
2372           "Connection" blocks.
2373         * hddtemp plugin: The "TranslateDevicename" config option has been
2374           removed.
2375         * interface plugin: Use the "plugin instance" to store the interface
2376           value.
2377         * libvirt plugin: The "InterfaceFormat" option has been added. Thanks
2378           to Ruben Kerkhof for his patch.
2379         * lpar plugin: New plugins for "logical partitions", a virtualization
2380           technique of POWER CPUs. Thanks to Aurélien Reynaud for his code and
2381           patience.
2382         * modbus plugin: Support for libmodbus 2.9.2 has been added and the
2383           license has been changed to LGPLv2.1.
2384         * mysql plugin: Backwards compatibility code has been removed. The
2385           data sets used have been improved.
2386         * network plugin: The default buffer size has been increased to
2387           1452 bytes.
2388         * perl plugin: Backwards compatibility code has been removed.
2389         * postgresql plugin: Backwards compatibility code has been removed.
2390         * redis plugin: Plugin for collecting statistics from Redis, a key-
2391           value store, has been added. Thanks to Andres J. Diaz for his code.
2392         * swap plugin: Implement collection of physical and virtual memory
2393           statistics under Solaris. The new default is collecting physical
2394           memory. Thanks to Aurélien Reynaud for his patches.
2395         * threshold plugin: The threshold configuration has been moved into
2396           this separate plugin.
2397         * unixsock plugin: The "DeleteSocket" option has been added.
2398         * varnish plugin: The new Varnish plugin reads statistics from
2399           Varnish, a web accelerator. Thanks to Jérôme Renard and Marc
2400           Fournier for their contributions.
2401         * write_redis: New plugin for writing data to Redis, a key-value
2402           store.
2403         * zfs_arc plugin: The data sets have been replaced by more elegant
2404           alternatives.
2405         * v5upgrade target: Target for converting v4 data sets to the v5
2406           schema.
2407
2408 2013-04-07, Version 4.10.9
2409         * Build system: A bad interaction between the Java detection code and
2410           libltdl has been fixed. Thanks to Dave Cottlehuber for his patch.
2411         * apache, ascent, bind, curl, curl_json, curl_xml, nginx and
2412           write_http plugins: Portability fixes, protection from infinite
2413           redirect loops, improved error handling and incorrect dereferences
2414           have been fixed. Most of these are related to the cURL library.
2415           Thanks to Dan Fandrich for his patches.
2416         * logfile plugin: Flush the output file handle. This works around
2417           caching when logging to STDOUT and redirecting into a file. Thanks
2418           to Nathan Huff for the patch.
2419         * network plugin: Build issues under FreeBSD and initialization have
2420           been fixed. Thanks to Ed Schouten for his patch.
2421         * mysql plugin: Fix a memory leak in the error handling. Thanks to
2422           Tomas Doran for his patch.
2423         * thermal plugin: The initialization of dispatched value lists has
2424           been fixed. Thanks to Markus Knetschke for his patch.
2425         * unixsock plugin: Parsing of options with an underscore, e.g.
2426           "plugin_instance" has been fixed. Thanks to Tommie Gannert for his
2427           patch.
2428
2429 2012-11-11, Version 4.10.8
2430         * collectd: Create new directories with mode 0777 and let umask remove
2431           unwanted permission bits.
2432         * collectd: Build issues have been fixed.
2433         * collectd: An incorrect assertion has been fixed in some common code
2434           for Solaris. This should resolve pseudo-random assertion failures
2435           under Solaris. Thanks to Jeff Blane for his help debugging this.
2436         * collectd: A couple of memory leaks through PThread thread attributes
2437           have been fixed. Thanks to Gerrie Roos for fixing these.
2438         * apcups plugin: Improve the reconnect behavior.
2439         * df plugin: Ignore "rootfs" devices under Linux to avoid having them
2440           reported twice. Thanks to Brune Prémont for fixing this.
2441         * disk plugin: Fix incorrect computation of read and write latency (the
2442           "disk_time" type). Previously, the numbers reported where too small
2443           by a factor of "interval", e.g. when the interval is set to 10
2444           seconds, the values were too low by a factor of 10. Thanks to Manuel
2445           Sanmartin for reporting this problem.
2446         * dns plugin: A build issue under Solaris has been fixed. A erroneous
2447           define that could lead to the reporting of bad data has been fixed by
2448           Daniel Sutto.
2449         * memcachec plugin: A bug in the configuration handling has been fixed.
2450           Thanks to Pascal Hofmann for fixing this issue.
2451         * netapp plugin: Correctly close the connection on communication
2452           errors.
2453         * netlink plugin: The function used to query statistics has been
2454           changed to be more in line with iproute2's behavior. Thanks to
2455           "KIvosak" for the patch.
2456         * network plugin: Initialization of libgcrypt has been fixed. Thanks to
2457           Chris Lundquist for his patch.
2458         * oracle plugin: Error messages have been improved.
2459         * ping plugin: Don't enter the exponential back-off mode when
2460           ping_send() fails. This should make recovery after a network failure
2461           much faster.
2462         * python plugin: Memory leaks have been fixed. Thanks to Tommie Gannert
2463           and Sven Trenkel for fixing this.
2464         * rrdtool plugin: Fix an out-of-bounds array access when printing a
2465           warning message. Thanks to Will Hawkins for fixing this bug.
2466         * snmp plugin: Support for the SNMP_ENDOFMIBVIEW return value has been
2467           added. Support for more complex / unusual MIBs / subtrees has been
2468           added. Thanks to Mark Juric to test the changes and point out these
2469           problems.
2470
2471 2012-04-01, Version 4.10.7
2472         * Build system: Fix the use of a libltdl macro. Thanks to Clemens Lang
2473           for fixing this. Adresses some issues with building the iptables
2474           plugin under Gentoo.
2475         * libcollectdclient: A memory leak in the lcc_getval() function has
2476           been fixed. Thanks to Jason Schmidlapp for finding and fixing this
2477           issue.
2478         * bind plugin: The use of 'QType" types has been fixed.
2479         * df plugin: Fixed compiler issue under Mac OS X 10.7.
2480         * conntrack plugin: Support zero as legitimate value. Thanks to Louis
2481           Opter for his patch.
2482         * memcached plugin: Increased the size of a static buffer, which was
2483           truncating status messages form memcached. Thanks to Timon for the
2484           patch.
2485         * network plugin: Forwarding of notifications has been disabled. This
2486           was a contition not checked for before, which may retult in an
2487           endless loop.
2488         * processes plugin: Support for process names with spaces has been
2489           added to the Linux implementation. Thanks to Darrell Bishop for his
2490           patch.
2491         * perl plugin: A race condition in several callbacks, including log and
2492           write callbacks, has been fixed. Thanks to "Rrpv" for reporting this
2493           bug.
2494         * snmp plugin: A bug when casting unsigned integers to gauge values has
2495           been fixed: Unsigned integers would be cast to a signed integer and
2496           then to a gauge, possibly resulting in a negative value.
2497         * tcpconns plugin: Compilation with newer versions of the FreeBSD
2498           runtime has been fixed.
2499
2500 2012-02-19, Version 4.10.6
2501         * Build system: Fix problems when building the ipvs and iptables
2502           plugins. Thanks to Sebastian Harl for his patch. A bashism in the
2503           version-gen.sh script has been fixed. Thanks to Jo-Philipp Wich for
2504           his patch.
2505         * csv and rrdtool plugins: Print a more helpful error message when the
2506           DataDir is a symlink pointing to a non-existing location. Thanks to
2507           Jonathan Nieder for his patch.
2508         * exec plugin: Fix a problem when using select(2) to read from file
2509           handles. Thanks to Gerrie Roos for his patch.
2510         * network plugin: An incorrect error message in the handling of the
2511           "Interface" configuration option has been fixed. Thanks to Gerrie
2512           Roos for his patch.
2513         * oracle plugin: A potential endless loop in the error handling has
2514           been fixed.
2515         * python plugin: A crash bug in the configuration handling has been
2516           fixed. Thanks to Sven Trenkel for his patch.
2517         * interfaces plugin: The change which was supposed to ignore "bogus"
2518           interfaces has been reverted, since it ignored legit interfaces, such
2519           as bonding pseudo-devices as well.
2520
2521 2012-01-21, Version 4.10.5
2522         * curl_xml plugin: Fix handling of file:// and other URLs (which don't
2523           follow HTTP status codes). Thanks to Fabien Wernli for his patch!
2524         * df plugin: Fix handling of negative "available" counts. This can
2525           occur with some file systems, for example UFS. Thanks to Toni Ylenius
2526           for his patch.
2527         * interface plugin: "mac" interfaces are now ignored on Solaris. These
2528           pseudo-interfaces occur multiple times, causing warnings. Also switch
2529           to 64-bit counters on Solaris, improving overflow behavior for
2530           high-speed interfaces. Thanks to Eddy Geez and Fabien Wernli for
2531           their patches.
2532         * memory plugin: Account kernel and unused memory under Solaris. Thanks
2533           to Fabien Wernli for his patch.
2534         * network plugin: A bug in the interaction between the Network plugin
2535           and filter chains has been fixed: When a filter modified a field such
2536           as the hostname, subsequent values in the same network packets could
2537           have ended up using the modified name rather than the original name.
2538           Thanks to Sebastian Harl for identifying the problem.
2539         * oracle plugin: A memory leak has been fixed in the parameter handling.
2540         * python plugin: A memory leak has been fixed. Thanks to Sven Trenkel
2541           for fixing this bug!
2542
2543 2011-10-14, Version 4.10.4
2544         * collectd: A mutex leak has been fixed in the meta data code. Thanks
2545           to Rafal Lesniak for his patch.
2546         * collectd: Compatibility fixes for GCC 4.6 have been applied. Thanks
2547           to Peter Green for his patch.
2548         * csv plugin: The line buffer size has been increased. Thanks to Colin
2549           McCabe for the patch.
2550         * curl_json plugin: Don't use the "parent" node to build the type
2551           instance, if it is empty. Compatibility with libyajl 2 has been
2552           added. Thanks to "spupykin" of the Arch Linux project for the initial
2553           code.
2554         * iptables plugin: Fix linking with some versions of libiptc.
2555         * irq plugin: Fix support for interrupts under Linux. The old code
2556           assumed that interrupts have a numeric value -- this is no longer
2557           true for Linux. Thanks to Bostjan Skufca for implementing this.
2558         * notify_desktop plugin: Compatibility with libnotify 0.7 has been
2559           added. Thanks to Samuli Suominen for his patch.
2560         * processes plugin: Fix handling of regular expressions containing
2561           spaces. Thanks for Sebastian Harl for fixing this.
2562         * rrdtool, rrdcached plugins: Improve precision of the XFF parameter.
2563           Previously, values like 0.999 would have been rounded to 1.0. Thanks
2564           to Francois-Xavier Bourlet for fixing this.
2565         * Various plugin: Set a multi-threading flag in libcurl. Thanks to Mike
2566           Flisher for the fix.
2567
2568 2011-03-26, Version 4.10.3
2569         * Documentation: Several updates and additions. Thanks to Sebastian Harl.
2570         * collectd: Build issues (compiler warnings) have been fixed. Thanks to
2571           Bruno Prémont.
2572         * collectd: Threshold subsection: Handling of NAN values in the
2573           percentage calculation has been fixed.
2574         * collectd, java plugin, ntpd plugin: Several diagnostic messages have
2575           been improved.
2576         * curl_json plugin: Handling of arrays has been fixed.
2577         * libvirt plugin: A bug in reading the virtual CPU statistics has been
2578           fixed. Thanks to “JLPC” for reporting this problem.
2579         * modbus plugin: Compatibility with libmodbus 2.0.3 has been restored.
2580         * processes plugin: Potentially erroneous behavior has been fixed in an
2581           error handling case.
2582         * python plugin: Fix dispatching of values from Python scripts to
2583           collectd. Thanks to Gregory Szorc for finding and fixing this
2584           problem.
2585
2586 2010-11-27, Version 4.10.2
2587         * Documentation: Various documentation fixes.
2588         * collectd: If including one configuration file fails, continue with
2589           the rest of the configuration if possible.
2590         * collectd: Fix a bug in the read function scheduling. In rare cases
2591           read functions may not have been called as often as requested.
2592         * collectd: Concurrency issues with errno(3) under AIX have been
2593           fixed: A thread-safe version of errno has to be requested under AIX.
2594           Thanks to Aurélien Reynaud for his patch.
2595         * collectd: A left-over hard-coded 2 has been replaced by the
2596           configurable timeout value.
2597         * curl, memcachec, tail plugins: Fix handling of "DERIVE" data
2598           sources. Matching the end of a string has been improved; thanks to
2599           Sebastian Harl for the patch.
2600         * curl_json plugin: Fix a problem when parsing 64bit integers. Reading
2601           JSON data from non-HTTP sources has been fixed.
2602         * netapp plugin: Pass the interval setting to the dispatch function.
2603           Restore compatibility to NetApp Release 7.3. Thanks to Sven Trenkel
2604           for the patch.
2605         * network plugin: Be less verbose about unchecked signatures, in order
2606           to prevent spamming the logs.
2607         * notify_email plugin: Concurrency problems have been fixed.
2608         * python plugin: Set "sys.argv", since many scripts don't expect that
2609           it may not be set. Thanks to Sven Trenkel for the patch.
2610         * rrdtool, rrdcached plugin: Fix a too strict assertion when creating
2611           RRD files.
2612         * swap plugin: A bug which lead to incorrect I/O values has been
2613           fixed.
2614         * value match: A minor memory leak has been fixed. Thanks to Sven
2615           Trenkel for the patch.
2616
2617 2010-07-09, Version 4.10.1
2618         * Build system: Checking for "strtok_r" under Solaris has been fixed.
2619         * Portability: Fixes for Solaris 8 have been applied. Thanks to
2620           Alexander Wuerstlein for his patch.
2621         * collectd: The shutdown speed when terminating the read threads has
2622           been improved.
2623         * libcollectdclient: A format error in the PUTVAL command has been
2624           removed. Thanks to Johan Van den Brande for fixing this.
2625         * df plugin: An error message shown when "cu_mount_getlist" fails has
2626           been added.
2627         * processes plugin: Missing initialization code for IO members of a
2628           struct has been added. Thanks to Aurélien Reynaud for fixing this.
2629         * python plugin: Memory leaks in the write and notification callbacks
2630           have been fixed. A possible crash when the plugin was loaded but not
2631           configured has been fixed. Thanks to Sven Trenkel for his patches.
2632         * snmp plugin: Verbosity with regard to unknown ASN types has been
2633           increased. A build problem on PowerPC and ARM processors has been
2634           fixed by Aurélien Reynaud; thanks!
2635         * powerdns plugin: Compatibility changes for PowerDNS 2.9.22 and above
2636           have been applied. Thanks to Luke Heberling for his changes.
2637
2638 2010-05-01, Version 4.10.0
2639         * collectd: JSON output now includes the "dstypes" and "dsnames"
2640           fields. This makes it easier for external applications to interpret
2641           the data. Thanks to Chris Buben for his work.
2642         * collectd: The new "Timeout" option can be used to specify a
2643           "timeout" for missing values. This is used in the threshold checking
2644           code to detect missing values. Thanks to Andrés J. Díaz for the
2645           patch.
2646         * apache plugin: Support for "IdleWorkers" (Apache 1.*: "IdleServers")
2647           has been added.
2648         * curl plugin: The new "ExcludeRegex" allows to easily exclude certain
2649           lines from the match.
2650         * curl_xml plugin: This new plugin allows to read XML files using cURL
2651           and extract metrics included in the files. Thanks to Amit Gupta for
2652           his work.
2653         * filecount plugin: The new "IncludeHidden" option allows to include
2654           "hidden" files and directories in the statistics. Thanks to Vaclav
2655           Malek for the patch.
2656         * logfile plugin: The new "PrintSeverity" option allows to include the
2657           severity of a message in the output. Thanks to Clément Stenac for
2658           his patch.
2659         * memcachec plugin: The new "ExcludeRegex" allows to easily exclude
2660           certain lines from the match.
2661         * modbus plugin: This new plugin allows to read registers from
2662           Modbus-TCP enabled devices.
2663         * network plugin: The new "Interface" option allows to set the
2664           interface to be used for multicast and, if supported, unicast
2665           traffic. Thanks to Max Henkel for his work.
2666         * openvpn plugin: The "CollectUserCount" and "CollectIndividualUsers"
2667           options allow more detailed control over how to report sessions of
2668           multiple users. Thanks to Fabian Schuh for his work.
2669         * pinba plugin: This new plugin receives timing information from the
2670           Pinba PHP extension, which can be used for profiling PHP code and
2671           webserver performance. Thanks to Phoenix Kayo for his work.
2672         * ping plugin: The new "MaxMissed" allows to re-resolve a hosts
2673           address when it doesn't reply to a number of ping requests. Thanks
2674           to Stefan Völkel for the patch.
2675         * postgresql plugin: The "Interval" config option has been added. The
2676           plugin has been relicensed under the 2-clause BSD license. Thanks to
2677           Sebastian Harl for his work.
2678         * processes plugin: Support for "code" and "data" virtual memory sizes
2679           has been added. Thanks to Clément Stenac for his patch.
2680         * python plugin: Support for Python 3 has been implemented. Thanks to
2681           Sven Trenkel for his work.
2682         * routeros plugin: Support for collecting CPU load, memory usage, used
2683           and free disk space, sectors written and number of bad blocks from
2684           MikroTik devices has been added.
2685         * swap plugin: Support for Linux < 2.6 has been added. Thanks to Lorin
2686           Scraba for his patch.
2687         * tail plugin: The new "ExcludeRegex" allows to easily exclude certain
2688           lines from the match. Thanks to Peter Warasin for his patch.
2689         * write_http plugin: The "StoreRates" option has been added. Thanks to
2690           Paul Sadauskas for his patch.
2691         * regex match: The "Invert" option has been added. Thanks to Julien
2692           Ammous for his patch.
2693
2694 2011-03-26, Version 4.9.5
2695         * Documentation: Several updates and additions. Thanks to Sebastian Harl.
2696         * collectd: Build issues (compiler warnings) have been fixed. Thanks to
2697           Bruno Prémont.
2698         * collectd: Threshold subsection: Handling of NAN values in the
2699           percentage calculation has been fixed.
2700         * collectd, java plugin, ntpd plugin: Several diagnostic messages have
2701           been improved.
2702         * libvirt plugin: A bug in reading the virtual CPU statistics has been
2703           fixed. Thanks to “JLPC” for reporting this problem.
2704         * processes plugin: Potentially erroneous behavior has been fixed in an
2705           error handling case.
2706         * python plugin: Fix dispatching of values from Python scripts to
2707           collectd. Thanks to Gregory Szorc for finding and fixing this
2708           problem.
2709
2710 2010-11-27, Version 4.9.4
2711         * Documentation: Various documentation fixes.
2712         * collectd: If including one configuration file fails, continue with
2713           the rest of the configuration if possible.
2714         * collectd: Fix a bug in the read function scheduling. In rare cases
2715           read functions may not have been called as often as requested.
2716         * collectd: Concurrency issues with errno(3) under AIX have been
2717           fixed: A thread-safe version of errno has to be requested under AIX.
2718           Thanks to Aurélien Reynaud for his patch.
2719         * curl, memcachec, tail plugins: Fix handling of "DERIVE" data
2720           sources. Matching the end of a string has been improved; thanks to
2721           Sebastian Harl for the patch.
2722         * curl_json plugin: Fix a problem when parsing 64bit integers. Reading
2723           JSON data from non-HTTP sources has been fixed.
2724         * netapp plugin: Pass the interval setting to the dispatch function.
2725           Restore compatibility to NetApp Release 7.3. Thanks to Sven Trenkel
2726           for the patch.
2727         * network plugin: Be less verbose about unchecked signatures, in order
2728           to prevent spamming the logs.
2729         * notify_email plugin: Concurrency problems have been fixed.
2730         * python plugin: Set "sys.argv", since many scripts don't expect that
2731           it may not be set. Thanks to Sven Trenkel for the patch.
2732         * rrdtool, rrdcached plugin: Fix a too strict assertion when creating
2733           RRD files.
2734         * value match: A minor memory leak has been fixed. Thanks to Sven
2735           Trenkel for the patch.
2736
2737 2010-07-09, Version 4.9.3
2738         * Build system: Checking for "strtok_r" under Solaris has been fixed.
2739         * Portability: Fixes for Solaris 8 have been applied. Thanks to
2740           Aurélien Reynaud and Alexander Wuerstlein for their patches.
2741         * collectd: The shutdown speed when terminating the read threads has
2742           been improved.
2743         * collectd-nagios: The format of the performance data has been fixed.
2744         * libcollectdclient: A format error in the PUTVAL command has been
2745           removed. Thanks to Johan Van den Brande for fixing this.
2746         * df plugin: An error message shown when "cu_mount_getlist" fails has
2747           been added.
2748         * processes plugin: Missing initialization code for IO members of a
2749           struct has been added. Thanks to Aurélien Reynaud for fixing this.
2750         * python plugin: Memory leaks in the write and notification callbacks
2751           have been fixed. A possible crash when the plugin was loaded but not
2752           configured has been fixed. Thanks to Sven Trenkel for his patches.
2753         * rrdcached plugin: A build issue has been resolved. Thanks to
2754           Thorsten von Eicken for the patch.
2755         * snmp plugin: Verbosity with regard to unknown ASN types has been
2756           increased. A build problem on PowerPC and ARM processors has been
2757           fixed by Aurélien Reynaud; thanks!
2758         * powerdns plugin: Compatibility changes for PowerDNS 2.9.22 and above
2759           have been applied. Thanks to Luke Heberling for his changes.
2760
2761 2010-04-22, Version 4.9.2
2762         * Build system, various plugins: Fixes for AIX compatibility have been
2763           added. Thanks to Manuel Sanmartin for his patches.
2764         * Build system: Checking for "nanosleep" on old Solaris machines has
2765           been fixed. Thanks to Vincent McIntyre and Sebastian Harl for
2766           figuring out a way to make this work.
2767         * collectd: Append a newline to messages written to STDERR.
2768         * collectd: Serialization of NANs in JSON format has been fixed.
2769           Thanks to Chris Buben for pointing out the resulting syntax error.
2770         * collectd: Checks whether a "sleep" returned early have been added;
2771           the cases are now handled correctly. Thanks to Michael Stapelberg
2772           for the patch.
2773         * collectd: Continue reading files in a directory when parsing one
2774           file fails.
2775         * apache plugin: Collection of the number of active connections has
2776           been fixed for Apache 2.*.
2777         * contextswitch plugin: Handle large counter/derive values correctly.
2778           Thanks to Martin Merkel for reporting the bug.
2779         * exec plugin: Error messages have been improved. The "running" flag
2780           is now cleared correctly when forking a child fails.
2781         * iptables plugin: Fix a violation of aliasing rules. This resolves a
2782           warning / error with new GCC versions. Thanks to Jan Engelhardt for
2783           the work-around.
2784         * java plugin: The Java API files are now packaged into a .jar file.
2785           Thanks to Amit Gupta for his patch.
2786         * network plugin: Fix a segmentation fault when receiving packets with
2787           an unknown data source type.
2788         * network plugin: A memory leak when receiving encrypted network
2789           packets has been fixed.
2790         * openvpn plugin: Fix naming schema when reading "MULTI1" type status
2791           files.
2792         * oracle plugin: Fix checking for lost connections and reconnect in
2793           this case. Thanks to Sven Trenkel for pointing out the problem.
2794         * unixsock plugin: A memory leak in the "LISTVAL" command has been
2795           fixed. Thanks to Peter Warasin for pointing it out.
2796         * write_http plugin: Use the "any" authentication schema. This used to
2797           be "digest". Thanks to Paul Sadauskas for the patch.
2798
2799 2010-01-14, Version 4.9.1
2800         * Documentation: Some manpage fixes.
2801         * Default config: Added sample configuration for missing plugins.
2802         * apache plugin: Fix a segmentation fault in the config handling of
2803           VerifyPeer / VerifyHost. Thanks to "plazmus" for his or her patch.
2804         * processes plugin: Fix handling of derive data sources.
2805         * rrdtool plugin: Fix a bug with random write timeouts. Due to an
2806           incorrect initialization some files may be suspended basically
2807           indefinitely. After flushing the files they were written regularly
2808           again.
2809         * routeros plugin: Use the node name for the "host" field.
2810         * Monitorus.pm: Put the plugin into the "Collectd::Plugins" namespace.
2811         * Perl bindings: Fix a warning that was printed when building
2812           debugging output.
2813
2814 2009-12-21, Version 4.9.0
2815         * contextswitch plugin: The new ContextSwitch plugin gathers the
2816           number of context switches done by the CPU. Thanks to Patrik
2817           Weiskircher for the patch.
2818         * cpu plugin: Support for SMP (multiple processors) under FreeBSD has
2819           been added. Thanks to Doug MacEachern for the patch.
2820         * curl plugin: The “MeasureResponseTime” option has been added. Thanks
2821           to Aman Gupta for the patch.
2822         * df plugin: Collecting the inode count and reserved space has been
2823           added. Thanks to Patrik Weiskircher for the patch.
2824         * exec plugin: The environment variables “COLLECTD_INTERVAL” and
2825           “COLLECTD_HOSTNAME” are now set before executing the application.
2826         * Monitorus plugin: This Perl-based plugin to query statistics from
2827           mon.itor.us has been added. Thanks to Jeff Green for the patch.
2828         * netapp plugin: New plugin to collect statistics from NetApp filers.
2829           Thanks to Sven Trenkel of the noris network AG for the patch.
2830         * network plugin: Statistics collection about the plugin itself has
2831           been implemented.
2832         * openvpn plugin: Add support for more versions of the “status file”.
2833           Thanks to Marco Chiappero for the patch.
2834         * OpenVZ plugin: This Perl-based plugin to gather OpenVZ statistics
2835           has been added. Thanks to Jonathan Kolb for the patch.
2836         * ping plugin: The config options "SourceAddress" and "Device"
2837           have been added. Thanks to Sebastian Harl for the patch.
2838         * processes plugin: Collection of IO-metrics has been added. Thanks to
2839           Andrés J. Díaz for the patch.
2840         * python plugin: The new Python plugin integrates a Python interpreter
2841           into collectd and allows to execute plugins written in the scripting
2842           language. Thanks to Sven Trenkel for his work.
2843         * routeros plugin: The new RouterOS plugin queries interface and
2844           wireless registration statistics from RouterOS.
2845         * Various plugins: AIX support has been added to the cpu, disk,
2846           interface, load, memory, processes, and swap plugins. Thanks to
2847           Manuel Sanmartin for his patches.
2848         * hashed match: This match for simple load balancing and redundant
2849           storage has been added.
2850         * scale target: This target to scale (multiply) values by an arbitrary
2851           value has been added.
2852
2853 2010-04-22, Version 4.8.5
2854         * collectd: Append a newline to messages written to STDERR.
2855         * network plugin: Fix a segmentation fault when receiving packets with
2856           an unknown data source type.
2857
2858 2010-04-07, Version 4.8.4
2859         * Build system, various plugins: Fixes for AIX compatibility have been
2860           added. Thanks to Manuel Sanmartin for his patches.
2861         * Build system: Checking for "nanosleep" on old Solaris machines has
2862           been fixed. Thanks to Vincent McIntyre and Sebastian Harl for
2863           figuring out a way to make this work.
2864         * collectd: Serialization of NANs in JSON format has been fixed.
2865           Thanks to Chris Buben for pointing out the resulting syntax error.
2866         * collectd: Checks whether a "sleep" returned early have been added;
2867           the cases are now handled correctly. Thanks to Michael Stapelberg
2868           for the patch.
2869         * collectd: Continue reading files in a directory when parsing one
2870           file fails.
2871         * apache plugin: Collection of the number of active connections has
2872           been fixed for Apache 2.*.
2873         * exec plugin: Error messages have been improved. The "running" flag
2874           is now cleared correctly when forking a child fails.
2875         * iptables plugin: Fix a violation of aliasing rules. This resolves a
2876           warning / error with new GCC versions. Thanks to Jan Engelhardt for
2877           the work-around.
2878         * java plugin: The Java API files are now packaged into a .jar file.
2879           Thanks to Amit Gupta for his patch.
2880         * network plugin: A memory leak when receiving encrypted network
2881           packets has been fixed.
2882         * oracle plugin: Fix checking for lost connections and reconnect in
2883           this case. Thanks to Sven Trenkel for pointing out the problem.
2884         * unixsock plugin: A memory leak in the "LISTVAL" command has been
2885           fixed. Thanks to Peter Warasin for pointing it out.
2886         * write_http plugin: Use the "any" authentication schema. This used to
2887           be "digest". Thanks to Paul Sadauskas for the patch.
2888
2889 2010-01-14, Version 4.8.3
2890         * Documentation: Some manpage fixes.
2891         * rrdtool plugin: Fix a bug with random write timeouts. Due to an
2892           incorrect initialization some files may be suspended basically
2893           indefinitely. After flushing the files they were written regularly
2894           again.
2895
2896 2009-12-18, Version 4.8.2
2897         * Build system, java plugin: Don't use “find -L” to search for Java
2898           headers, because it's a GNU extension.
2899         * Build system: Support for parallel builds has been improved. Thanks
2900           Sebastian Harl and Stefan Völkel for looking into this.
2901         * collectd: Print error messages to STDERR if no log plugin has been
2902           loaded.
2903         * genericjmx plugin: Close and re-open the connection upon I/O-errors.
2904         * gmond plugin: Fix typos which caused syntax errors.
2905         * memory plugin: Handling of >4 Gbyte of memory has been fixed.
2906         * network plugin: The license has been changed to LGPL 2.1.
2907         * oracle plugin: Reconnect to the database if the connection dies.
2908         * rrdcached plugin: Work-around for a bug in RRDtool 1.4rc2 has been
2909           added.
2910         * snmp plugin: Handling of negative values has been fixed. Strings
2911           containing control characters are now interpreted as hex-strings.
2912         * unixsock plugin: A memory leak in the LISTVAL command has been
2913           fixed. Thanks to Ben Knight for his patch.
2914
2915 2009-10-04, Version 4.8.1
2916         * Build system: Issues when building the iptables plugin have been
2917           fixed.
2918         * exec plugin: Clear the signal block mask before calling exec(2).
2919         * perl plugin: Declare the “environ” variable. This solves build
2920           issues on some platforms.
2921         * processes plugin: Remove unnecessary call of realloc(3). Thanks to
2922           Andrés J. Díaz for the patch.
2923         * unixsock plugin: Fix a (well hidden) race condition related to file
2924           descriptor handling.
2925
2926 2009-09-13, Version 4.8.0
2927         * collectd: Two new data source types, “DERIVE” and “ABSOLUTE”, have
2928           been added. “DERIVE” can be used for counters that are reset
2929           occasionally. Thanks to Mariusz Gronczewski for implementing this.
2930         * thresholds: The advanced threshold options “Percentage”, “Hits”, and
2931           “Hysteresis” have been added. Thanks to Andrés J. Díaz for his
2932           patches.
2933         * curl_json plugin: The new cURL-JSON plugin reads JSON files using
2934           the cURL library and parses the contents according to user
2935           specification. Among other things, this allows to read statistics
2936           from a CouchDB instance. Thanks to Doug MacEachern for the patch.
2937         * df plugin: Using the new “ReportByDevice” option the device rather
2938           than the mount point can be used to identify partitions. Thanks to
2939           Paul Sadauskas for the patch.
2940         * dns plugin: The possibility to ignore numeric QTypes has been added.
2941           Thanks to Mirko Buffoni for the patch.
2942         * GenericJMX plugin: The new, Java-based GenericJMX plugin allows to
2943           query arbitrary data from a Java process using the “Java Management
2944           Extensions” (JMX).
2945         * madwifi plugin: The new MadWifi plugin collects information about
2946           Atheros wireless LAN chipsets from the MadWifi driver. Thanks to
2947           Ondrej Zajicek for his patches.
2948         * network plugin: The receive- and send-buffer-sizes have been made
2949           configurable, allowing for bigger and smaller packets. Thanks to
2950           Aman Gupta for the patch.
2951         * olsrd plugin: The new OLSRd plugin queries routing information from
2952           the “Optimized Link State Routing” daemon.
2953         * rrdtool plugin: A new configuration option allows to define a random
2954           write delay when writing RRD files. This spreads the load created by
2955           writing RRD files more evenly. Thanks to Mariusz Gronczewski for the
2956           patch.
2957         * swap plugin: The possibility to collect swapped in/out pages has
2958           been added to the Swap plugin. Thanks to Stefan Völkel for the
2959           patch.
2960         * tokyotyrant plugin: The new TokyoTyrant plugin reads the number of
2961           records and file size from a running Tokyo Tyrant server. Thanks to
2962           Paul Sadauskas for the patch.
2963         * unixsock plugin: Add the “GETTHRESHOLD” command. This command can be
2964           used to query the thresholds configured for a particular identifier.
2965         * write_http plugin: The new Write HTTP plugin sends the values
2966           collected by collectd to a web-server using HTTP POST requests.
2967           Thanks to Paul Sadauskas for the patch.
2968         * zfs_arc plugin: The new ZFS ARC plugin collects information about
2969           the “Adaptive Replacement Cache” (ARC) of the “Zeta File-System”
2970           (ZFS). Thanks to Anthony Dewhurst for the patch.
2971         * empty_counter match: The new Empty Counter match matches value
2972           lists, where at least one data source is of type COUNTER and the
2973           counter value of all counter data sources is zero.
2974
2975 2009-12-18, Version 4.7.5
2976         * Build system, java plugin: Don't use “find -L” to search for Java
2977           headers, because it's a GNU extension.
2978         * Build system: Support for parallel builds has been improved. Thanks
2979           Sebastian Harl and Stefan Völkel for looking into this.
2980         * collectd: Print error messages to STDERR if no log plugin has been
2981           loaded.
2982         * memory plugin: Handling of >4 Gbyte of memory has been fixed.
2983         * network plugin: The license has been changed to LGPL 2.1.
2984         * oracle plugin: Reconnect to the database if the connection dies.
2985         * rrdcached plugin: Work-around for a bug in RRDtool 1.4rc2 has been
2986           added.
2987         * snmp plugin: Handling of negative values has been fixed. Strings
2988           containing control characters are now interpreted as hex-strings.
2989         * unixsock plugin: A memory leak in the LISTVAL command has been
2990           fixed. Thanks to Ben Knight for his patch.
2991
2992 2009-10-03, Version 4.7.4
2993         * Build system: Issues when building the iptables plugin have been
2994           fixed.
2995         * exec plugin: Clear the signal block mask before calling exec(2).
2996         * perl plugin: Declare the “environ” variable. This solves build
2997           issues on some platforms.
2998         * processes plugin: Remove unnecessary call of realloc(3). Thanks to
2999           Andrés J. Díaz for the patch.
3000         * unixsock plugin: Fix a (well hidden) race condition related to file
3001           descriptor handling.
3002
3003 2009-09-13, Version 4.7.3
3004         * collectd: Fix a possible but very rare invalid “free” in the caching
3005           code. Thanks to Sebastian Harl for the patch.
3006         * collectd: Remove old values when a cache entry is marked as missing.
3007           This way the “GETVAL” command of the UnixSock plugin doesn't return
3008           old, no longer valid values when this happens. Thanks to Andrés J.
3009           Díaz for the patch.
3010         * collectd: The “plugin_unregister_read” function has been fixed.
3011         * apache, ascent, bind, curl, nginx plugins: Advise the cURL library
3012           to follow redirects. Thanks to Joey Hess for reporting this bug.
3013         * df plugin: Check the ignorelist before stating the file system,
3014           possibly reducing the number of stats considerably. Thanks to Joey
3015           Hess for reporting this bug.
3016         * iptables plugin: Support for the new libiptc API has been added.
3017           Thanks to Sebastian Harl for the patch. The build system has been
3018           updated to the plugin only includes the shipped header files when it
3019           is linked with the shipped library, too.
3020         * java plugin: Delay creating the JVM until after the daemon has
3021           forked. The JVM internally creates threads that are lost when
3022           forking. This means that Java-based plugins are now configured
3023           during the init-phase, i. e. later than other plugins.
3024         * libvirt plugin: Re-connect to libvirtd if connecting fails. Thanks
3025           to Alan Pevec for the patch.
3026         * network plugin: Fix the handling of the “CacheFlush” option: The
3027           value was assigned to a wrong variable. The initialization of the
3028           gcrypt library, which is used for signing / encrypting traffic, has
3029           been fixed. Thanks to Luke Heberling for the patch.
3030         * powerdns plugin: Set a timeout when reading data from the datagram
3031           socket. Handling of the “LocalSocket” option has been fixed.  An
3032           incorrectly used “type” has been corrected. Thanks to Luke Heberling
3033           for his patches.
3034
3035 2009-07-19, Version 4.7.2
3036         * Build system: Support for `DESTDIR' has been fixed in the Java
3037           bindings.
3038         * collectd: Okay-notifications have been fixed. Thanks to Andrés J.
3039           Díaz for fixing this bug.
3040         * collectd: A programming error has been fixed in the notification
3041           code. The bug may result in an assertion failure.
3042         * memcached plugin: Portability fix for Solaris. Thanks to Amit Gupta
3043           for reporting the bug.
3044         * ping plugin: Link the plugin with libm.
3045
3046 2009-06-02, Version 4.7.1
3047         * Build system: Detection of Java has been improved and missing
3048           details have been added to the configuration summary. Support for
3049           libtool 2.2 has been added.
3050         * collectd: Two bugs with the threshold checking have been fixed. The
3051           first one prevented thresholds to be checked at all, the second one
3052           caused wrong behavior with the persistency option. Thanks to Andrés
3053           J. Díaz for fixing these problems.
3054         * collectd: Handling of the `Include' configuration option has been
3055           fixed.
3056         * rrdtool plugin: Make sure initialization is run only once. This
3057           resolves problems under Solaris and potentially other systems.
3058           Thanks to Amit Gupta for reporting this bug.
3059         * java plugin: Make it possible to use dots ('.') instead of slashes
3060           ('/') as the class separator. Thanks to Randy Rizun for pointing
3061           this out.
3062         * swap plugin: A work-around for 32-bit Solaris has been added. Thanks
3063           to Doug MacEachern for the patch.
3064
3065 2009-05-11, Version 4.7.0
3066         * apache plugin: Support to query multiple servers has been added.
3067           Thanks to Amit Gupta for the patch.
3068         * apache plugin: Handling of lighttpd's scoreboard statistics has been
3069           improved. Thanks to Amit Gupta for the patch.
3070         * conntrack plugin: The new conntrack plugin collects the connection
3071           tracking table size. Thanks to Tomasz Pala for the patch.
3072         * fscache plugin: The new fscache plugin collects statistics about
3073           Linux' file-system based caching framework. Thanks to Edward
3074           Konetzko for the patch.
3075         * gmond plugin: The new gmond plugin can receive and interpret
3076           multicast traffic from Ganglia's gmond daemon.
3077         * java plugin: The new java plugin exports the collectd API to Java,
3078           making it possible to write extensions to collectd in Java.
3079         * memcachec plugin: The new memcachec plugin queries data from a
3080           memcached daemon and parses it similar to the cURL plugin. Thanks to
3081           Doug MacEachern for the initial code.
3082         * memcached plugin: Support for connections over UNIX domain sockets
3083           has been added. Thanks to Franck Lombardi for the patch.
3084         * memory plugin: Support for OpenBSD and possibly other *BSDs has been
3085           added. Thanks to Simon Kuhnle for the patch.
3086         * mysql plugin: Support to query multiple databases has been added.
3087           Thanks to Doug MacEachern for the patch.
3088         * mysql plugin: Master/slave statistics have been added.
3089         * mysql plugin: Lock statistics have been added. Thanks to Rodolphe
3090           Quiédeville for the patch.
3091         * network plugin: The possibility to sign or encrypt network traffic
3092           has been added.
3093         * protocols plugin: The new protocols plugin provides information
3094           about network protocols, such as IP, TCP and UDP.
3095         * snmp plugin: The intervals given in the configuration of the SNMP
3096           plugin must no longer be a multiple of the global interval.
3097         * table plugin: The new Table plugin provides parsing for table-like
3098           structured files, such as many files beneath /proc.
3099         * ted plugin: The new TED plugin reads power consumption measurements
3100           from “The Energy Detective” (TED). Thanks to Eric Reed for this
3101           plugin.
3102         * onewire plugin: The new `Interval' option allows collecting
3103           information from OneWire sensors at arbitrary intervals.
3104         * ping plugin: Support for collecting the drop rate and standard
3105           deviation of round-trip times has been added.
3106         * uptime plugin: The new uptime plugin can collect the server's
3107           uptime. Thanks to Marco Chiappero for the patch.
3108
3109 2009-09-10, Version 4.6.5
3110         * collectd: Remove old values when a cache entry is marked as missing.
3111           This way the “GETVAL” command of the UnixSock plugin doesn't return
3112           old, no longer valid values when this happens. Thanks to Andrés J.
3113           Díaz for the patch.
3114         * apache, ascent, bind, curl, nginx plugins: Advise the cURL library
3115           to follow redirects. Thanks to Joey Hess for reporting this bug.
3116         * df plugin: Check the ignorelist before stating the file system,
3117           possibly reducing the number of stats considerably. Thanks to Joey
3118           Hess for reporting this bug.
3119         * iptables plugin: Support for the new libiptc API has been added.
3120           Thanks to Sebastian Harl for the patch. The build system has been
3121           updated to the plugin only includes the shipped header files when it
3122           is linked with the shipped library, too.
3123         * libvirt plugin: Re-connect to libvirtd if connecting fails. Thanks
3124           to Alan Pevec for the patch.
3125         * powerdns plugin: Set a timeout when reading data from the datagram
3126           socket. Handling of the “LocalSocket” option has been fixed.  An
3127           incorrectly used “type” has been corrected. Thanks to Luke Heberling
3128           for his patches.
3129
3130 2009-07-18, Version 4.6.4
3131         * collectd: Okay-notifications have been fixed. Thanks to Andrés J.
3132           Díaz for fixing this bug.
3133         * collectd: A programming error has been fixed in the notification
3134           code. The bug may result in an assertion failure.
3135         * memcached plugin: Portability fix for Solaris. Thanks to Amit Gupta
3136           for reporting the bug.
3137
3138 2009-06-02, Version 4.6.3
3139         * Build system, various plugins: Many build fixes for FreeBSD,
3140           OpenBSD, NetBSD, Solaris and Mac OS X. Big thanks to Doug MacEachern
3141           for many fixes and providing a build system for many platforms,
3142           Ulf Zimmermann for providing a FreeBSD system and Simon Kuhnle for
3143           providing an OpenBSD system.
3144         * collectd: Two bugs with the threshold checking have been fixed. The
3145           first one prevented thresholds to be checked at all, the second one
3146           caused wrong behavior with the persistency option. Thanks to Andrés
3147           J. Díaz for fixing these problems.
3148         * collectd: Handling of the `Include' configuration option has been
3149           fixed.
3150         * battery plugin: Don't complain about a missing directory every
3151           interval.
3152         * exec plugin: Allow executed programs to close STDERR. Thanks to
3153           Thorsten von Eicken for reporting this problem.
3154         * irq plugin: Fix handling of overflowing 32-bit counters. Thanks to
3155           Tomasz Pala for the patch.
3156         * perl plugin: Portability build-fixes. Thanks to Doug MacEachern for
3157           the patch.
3158         * memory plugin: Fix a potential problem under Solaris.
3159         * swap plugin: A work-around for 32-bit Solaris has been added. Thanks
3160           to Doug MacEachern for the patch.
3161
3162 2009-03-18, Version 4.6.2
3163         * collectd: Some Solaris utility code has been improved.
3164         * filter subsystem: Allow `Chains' without default targets.
3165         * liboping: A patch to comply with strict aliasing rules has been
3166           added.
3167         * timediff match: Fix a typo: The match was registered with a wrong
3168           name which prevented this match to be used as documented. Thanks to
3169           Bruno Prémont for finding this problem.
3170         * bind plugin: Fix collection of the cached RR sets. The number of RR
3171           sets currently in the cache was collected as a counter value, which
3172           is nonsense. Thanks to Bruno Prémont for implementing this.
3173         * dns plugin: Don't pass NULL to `pcap_open_live': Some systems,
3174           primarily BSDs, don't take it well and crash.
3175         * oracle plugin: Portability to 64 bit systems has been improved.
3176         * postgresql plugin: The default configuration has been improved.
3177         * rrdtool plugin: Fix a possible race condition: If the network plugin
3178           is brought and dispatches a value before the rrdtool plugin is
3179           initialized, the daemon may crash.
3180
3181 2009-02-22, Version 4.6.1
3182         * collectd: Many documentation fixes.
3183         * Collectd::Unixsock: Error handling has been improved.
3184         * regex match: Don't link with the PCRE library.
3185         * bind plugin: Various bugs have been fixed. Thanks to Bruno Prémont
3186           for finding and fixing most of them.
3187         * ipmi plugin: Fix an off-by-one error which could cause segmentation
3188           faults. Thanks to Peter Holik for his patch.
3189
3190 2009-02-16, Version 4.6.0
3191         * collectd: Added the `filter chain' infrastructure, which allows the
3192           user to use `matches' and `targets' to control value processing.
3193         * collectd: The new `-T' command line argument allows more in-depth
3194           testing of a configuration. Thanks to Doug MacEachern for the patch.
3195         * collectd-nagios: The Nagios integration command has been updated to
3196           use libcollectdclient. The `percentage' aggregation function has
3197           been added. Thanks to Fabian Linzberger for the patch.
3198         * libcollectdclient: A library which abstracts communication with the
3199           unixsock plugin for clients has been added.
3200         * regex match: Match values by their identifies using regular
3201           expressions.
3202         * timediff match: Match for values with an invalid timestamp.
3203         * value match: Select values by their data sources' values.
3204         * notification target: Create and dispatch a notification.
3205         * replace target: Replace parts of an identifier using regular
3206           expressions.
3207         * set target: Set (overwrite) entire parts of an identifier.
3208         * bind plugin: This new plugin uses the new HTTP/XML interface to BIND
3209           statistics, allowing very detailed name server statistics. Thanks to
3210           Bruno Prémont for this plugin.
3211         * cpu plugin: Report `interrupt' separately when using
3212           sysctlbyname(3) (used under *BSD). Support for sysctl(3), for
3213           example for native OpenBSD support, has been added. Thanks to Simon
3214           Kuhnle for the patch.
3215         * csv plugin: Make it possible to write values to STDOUT instead of
3216           files. This is meant for testing purposes mostly. The output written
3217           to STDOUT is compatible with the exec plugin. Thanks to Doug
3218           MacEachern for the patch.
3219         * curl plugin: This new plugin can be used to read web pages and parse
3220           them using the same mechanism that's used in the tail plugin.
3221         * dbi plugin: This new plugin allows you to connect to a variety of
3222           relational databases and use SQL to gather custom statistics from
3223           it. It is similar to the already existing PostgreSQL plugin but uses
3224           libdbi to communicate with the database(s).
3225         * interface plugin: Use the ignorelist framework when selecting /
3226           ignoring interfaces. This allows one to use regular expressions to
3227           select interfaces, too.
3228         * ipmi plugin: Handle temporary IPMI error conditions more gracefully.
3229           Thanks to Bruno Prémont for this patch.
3230         * memcached plugin: Add hit-ratio metric. Thanks to Doug MacEachern
3231           for the patch.
3232         * mysql plugin: Allow connecting to a database via the UNIX domain
3233           socket, too. Thanks to Mirko Buffoni for the patch.
3234         * network plugin: Further performance improvements for the receive
3235           code. This hopefully will help very large setups.
3236         * openvpn plugin: This new plugin collects statistics provided by the
3237           OpenVPN daemon. Thanks to Doug MacEachern for the patch.
3238         * oracle plugin: This new plugin allows you to connect to an Oracle
3239           database and use SQL to gather custom statistics from it. It is
3240           similar to the already existing PostgreSQL plugin.
3241         * perl plugin: Compatibility fixes for broken versions of Perl 5.10
3242           have been added.
3243         * perl plugin: Export the newly added plugin_write() to Perl plugins.
3244         * perl plugin: Added support for `notification meta data'.
3245         * perl plugin: Added support for the `filter chain' infrastructure by
3246           allowing plugins to register `matches' and `targets'.
3247         * postgresql plugin: The preferred configuration syntax has been
3248           updated to be in line with the syntax used by the new dbi and oracle
3249           plugins. The compatibility code for the old syntax is present.
3250           Support for the new `Result' blocks and the interval parameter has
3251           been added.
3252         * processes plugin: Stacksize and virtual memory usage statistics have
3253           been added. Portability fixes.
3254         * rrdcached plugin: This new plugin uses the (still in development)
3255           RRD accelerator daemon, rrdcached. This daemon works very similar to
3256           the original rrdtool plugin of collectd, but adds some more nice
3257           features.
3258         * swap plugin: Code for OpenBSD (and possibly other *BSDs) has been
3259           added.
3260
3261 2009-05-09, Version 4.5.4
3262         * Build system, various plugins: Many build fixes for FreeBSD,
3263           OpenBSD, NetBSD, Solaris and Mac OS X. Big thanks to Doug MacEachern
3264           for many fixes and providing a build system for many platforms,
3265           Ulf Zimmermann for providing a FreeBSD system and Simon Kuhnle for
3266           providing an OpenBSD system.
3267         * collectd: Fix a potential race condition when creating directories.
3268         * battery plugin: Don't complain about a missing directory every
3269           interval.
3270         * dns plugin: Slight portability fixes.
3271         * exec plugin: Allow executed programs to close STDERR. Thanks to
3272           Thorsten von Eicken for reporting this problem.
3273         * irq plugin: Fix handling of overflowing 32-bit counters. Thanks to
3274           Tomasz Pala for the patch.
3275         * perl plugin: Portability build-fixes. Thanks to Doug MacEachern for
3276           the patch.
3277         * rrdtool plugin: Fix a possible race condition: If the network plugin
3278           is initialized and dispatches a value before the rrdtool plugin is
3279           initialized, the daemon may crash.
3280         * memory plugin: Fix a potential problem under Solaris.
3281
3282 2009-02-22, Version 4.5.3
3283         * build system: The check for libupsclient even when `pkg-config' is
3284           not available.
3285         * collectd: Fix error handling in the global cache.
3286         * Collectd::Unixsock: Error handling has been improved.
3287         * ascent plugin: Fix a memory leak. Thanks to Bruno Prémont for his
3288           patch.
3289         * ipmi plugin: Fix an off-by-one error which could cause segmentation
3290           faults. Thanks to Peter Holik for his patch.
3291         * tcpconns plugin: An endianness problem has been fixed in the *BSD
3292           code. Thanks to "thated" for reporting this.
3293
3294 2009-01-02, Version 4.5.2
3295         * build system: Check for `mysql.h' and `mysql/mysql.h', since the
3296           file may be in both locations, especially when the database was
3297           installed in a non-standard path. Thanks to Dusty Doris for
3298           reporting this.
3299         * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
3300           Solaris, in the configure script automatically.
3301         * build system, tcpconns plugin: Check for `kvm_nlist' and
3302           `kvm_openfiles' before enabling the plugin: Solaris provides a KVM
3303           library with similar functions to the BSD variant, but doesn't
3304           provide these necessary functions.
3305         * collectd.conf(5): Various fixes and clarifications.
3306         * collectd: Remove a GNUism (unnamed unions), thus improving
3307           portability.
3308         * collectd, apcups plugin: Include "collectd.h" before <stdlib.h>.
3309           This solves portability problems, especially for Solaris.
3310         * dns plugin: Fix a portability problem with NetBSD.
3311         * filecount plugin: Fix an off-by-one error. This error may cause a
3312           segmentation fault.
3313         * network plugin: Fix the handling of `type' in the network protocol.
3314           Due to a programming mistake, only 4 or 8 bytes would be copied to a
3315           much larger buffer. This caused the `type' to be transferred much
3316           more often than necessary. In some cases, e. g. the `cpu' and
3317           `cpufreq' plugins being used at the same time, data may be corrupted
3318           in those files. Thanks to Bruno Prémont for debugging and reporting
3319           this issue.
3320         * processes plugin: Fix a possible segmentation fault when specifying
3321           invalid configuration options.
3322         * unixsock plugin: Make sure the initialization function is run only
3323           once. This resolves a file descriptor leak under systems which run
3324           the initialization more than once, such as Solaris.
3325
3326 2008-10-16, Version 4.5.1
3327         * build system: Change `--enable-<plugin>' to abort with an error if
3328           dependencies are not met. Thanks to Bruno Prémont for the patch.
3329           Also, the poisoning of various string functions has been restricted
3330           to debug builds.
3331         * collectd: Fix a memory leak in the global value cache. With every
3332           *missing* value a couple of bytes would be leaked. Another memory
3333           leak in the configuration handling code has been fixed. Thanks to
3334           Niraj Tolia for reporting these issues.
3335         * collectd: Fix an off-by-one error in the ignorelist functionality.
3336           When using regular expressions, the last character would be missing,
3337           possibly matching differently from what one would expect.
3338         * collectdmon: Don't block SIGCHLD. This fixes a potential portability
3339           problem.
3340         * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
3341           Linzberger for reporting the bug.
3342         * iptables plugin: Fix an off-by-one error. If a string was just one
3343           character too long, it was truncated instead of reporting an error.
3344         * network plugin: Fix a memory leak in the configuration handling
3345           code. Thanks to Niraj Tolia for reporting this issue.
3346         * perl plugin: Log an error message if bootstrapping `Collectd' fails.
3347         * postgresql plugin: Don't reopen connection during reinitialization.
3348           This fixes a bug under Solaris and potentially other platforms.
3349           Missing calls to `PQclear' have been added, too. This fixes memory
3350           leaks. Thanks to ``Admin'' for reporting these bugs.
3351         * snmp plugin: Don't expect null-terminated strings from the Net-SNMP
3352           library.
3353         * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
3354           problems with some `libc's. Thanks to Matthias Lay for reporting the
3355           bug.
3356
3357 2008-09-04, Version 4.5.0
3358         * collectd: Added the ability to flush certain identifiers.
3359         * collectd: The concept of `notification meta data' has been
3360           introduced.
3361         * filecount plugin: The new filecount plugin counts the number of
3362           files in a directory and its subdirectories.
3363         * ipmi plugin: Sensor names have been changed to ensure unique names.
3364           Notifications upon added and removed sensors can now be generated.
3365         * notify_desktop plugin: This new plugin sends notifications to the
3366           X desktop using the structure defined in the `Desktop Notification
3367           Specification'.
3368         * notify_email plugin: This new plugin sends out notifications via
3369           email, using the `esmtp' library.
3370         * onewire plugin: The new experimental(!) onewire plugin reads values,
3371           such as temperatures, from sensors connected to the computer via the
3372           onewire bus.
3373         * perl plugin: Improved synchronized access to internal data structures
3374           and fixed a possible dead-lock.
3375         * perl plugin: Added the ability to flush certain identifiers and marked
3376           plugin_flush_all() and plugin_flush_one() as deprecated in favor of
3377           plugin_flush().
3378         * perl plugin: Added the ability to configure Perl plugins.
3379         * postgresql plugin: The new postgresql plugin collects statistics
3380           about or from a PostgreSQL database.
3381         * processes plugin: The `ProcessMatch' option has been added.
3382         * rrdtool plugin: Implement throttling of the `update queue' to lessen
3383           IO load.
3384         * tcpconns plugin: This plugin has been ported to OpenBSD.
3385         * thermal plugin: The new thermal plugin collects system temperatures
3386           using Linux ACPI thermal zone data.
3387
3388 2009-01-02, Version 4.4.5
3389         * build system: Check for `mysql.h' and `mysql/mysql.h', since the
3390           file may be in both locations, especially when the database was
3391           installed in a non-standard path. Thanks to Dusty Doris for
3392           reporting this.
3393         * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
3394           Solaris, in the configure script automatically.
3395         * collectd.conf(5): Various fixes and clarifications.
3396         * apcups plugin: Include "collectd.h" before <stdlib.h>. This solves
3397           portability problems, especially for Solaris.
3398         * dns plugin: Fix a portability problem with NetBSD.
3399         * network plugin: Fix the handling of `type' in the network protocol.
3400           Due to a programming mistake, only 4 or 8 bytes would be copied to a
3401           much larger buffer. This caused the `type' to be transferred much
3402           more often than necessary. In some cases, e. g. the `cpu' and
3403           `cpufreq' plugins being used at the same time, data may be corrupted
3404           in those files. Thanks to Bruno Prémont for debugging and reporting
3405           this issue.
3406         * unixsock plugin: Make sure the initialization function is run only
3407           once. This resolves a file descriptor leak under systems which run
3408           the initialization more than once, such as Solaris.
3409
3410 2008-10-16, Version 4.4.4
3411         * build system: Change `--enable-<plugin>' to abort with an error if
3412           dependencies are not met. Thanks to Bruno Prémont for the patch.
3413           Also, the poisoning of various string functions has been restricted
3414           to debug builds.
3415         * collectd: Fix a memory leak in the global value cache. With every
3416           *missing* value a couple of bytes would be leaked. Another memory
3417           leak in the configuration handling code has been fixed. Thanks to
3418           Niraj Tolia for reporting these issues.
3419         * collectd: Fix an off-by-one error in the ignorelist functionality.
3420           When using regular expressions, the last character would be missing,
3421           possibly matching differently from what one would expect.
3422         * collectdmon: Don't block SIGCHLD. This fixes a potential portability
3423           problem.
3424         * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
3425           Linzberger for reporting the bug.
3426         * network plugin: Fix a memory leak in the configuration handling
3427           code. Thanks to Niraj Tolia for reporting this issue.
3428         * perl plugin: Log an error message if bootstrapping `Collectd' fails.
3429         * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
3430           problems with some `libc's. Thanks to Matthias Lay for reporting the
3431           bug.
3432
3433 2008-09-01, Version 4.4.3
3434         * collectd: Fix a memory leak in the threshold checking code.
3435         * memcached plugin: Fix a too short timeout and a related file
3436           descriptor leak.
3437         * memory plugin: A typo in the libstatgrab code has been fixed.
3438         * snmp plugin: Fix a possible memory leak.
3439
3440 2008-07-15, Version 4.4.2
3441         * build system: Use pkg-config to detect the upsclient library.
3442         * collectd: Try even harder to determine the endianness of the
3443           architecture collectd is being built on.
3444         * disk plugin: Fix for Linux 2.4: A wrong field was used as the name
3445           of disks.
3446         * dns plugin: Fix compilation errors with BIND versions 19991001
3447           through 19991005.
3448         * network plugin: Bugfix in the init routine: The init function
3449           cleared a buffer regardless of its contents. This could lead to lost
3450           values under Solaris.
3451         * nginx plugin: Remove usage of the thread-unsafe `strtok' function.
3452         * vserver plugin: Remove usage of the thread-unsafe `readdir'
3453           function.
3454         * wireless plugin: Work around incorrect noise and power values
3455           returned by some broken drivers.
3456
3457 2008-06-03, Version 4.4.1
3458         * collectd: Fix the `DataSource' option within `Type' blocks. Thanks
3459           to kyrone for reporting this.
3460         * collectd: Fixed min/max output in notifications generated by
3461           threshold checking.
3462         * collectd-nagios: Fix the protocol used to communicate with the
3463           daemon.
3464         * perl plugin: Fail noisily, but don't shutdown the daemon, if
3465           initialization has errors. An issue with Perl 5.10 has been fixed.
3466         * teamspeak2 plugin: Fixed an out of bound array access. Thanks to
3467           René Rebe and Siegmund Gorr for reporting this.
3468
3469 2008-05-06, Version 4.4.0
3470         * collectd: Internal code cleanups.
3471         * collectd: Added support for a `Flush' command in the unixsock and
3472           exec plugins. This command can be used to force a plugin (or all) to
3473           flush its values to disk.
3474         * collectd: Thresholds can now be configured to apply to one data
3475           source only, making it possible to configure different thresholds
3476           for each data source.
3477         * apache, nginx plugins: Added the possibility to disable host and/or
3478           peer verification.
3479         * ascent plugin: The new ascent plugin reads and parses the statistics
3480           page of an Ascent server.
3481         * cpu plugin: Support for the statgrab library has been added.
3482         * disk plugin: The possibility to ignore certain disks or collect only
3483           specific disks has been added.
3484         * disk plugin: Support for the statgrab library has been added.
3485         * ipmi plugin: The new ipmi plugin uses the OpenIPMI library to read
3486           sensor values via IPMI, the intelligent platform management
3487           interface.
3488         * iptables plugin: The iptc library that is used by the iptables
3489           plugin has been added to the distribution, because it is not
3490           provided by all distributions and removed from at least one.
3491         * powerdns plugin: The new powerdns plugin reads statistics from an
3492           authoritative or a recursing PowerDNS name server.
3493         * rrdtool plugin: The size of the files generated with the default
3494           configuration has been decreased.
3495         * tail plugin: The new tail plugin can be used to gather statistics by
3496           continuously reading from log files.
3497         * teamspeak2 plugin: The new teamspeak2 plugin connects to a
3498           TeamSpeak2 server and collects statistics about the number of users
3499           and number of channels.
3500         * users plugin: Support for the statgrab library has been added.
3501         * vmem plugin: The new vmem plugin collects very detailed statistics
3502           about the virtual memory subsystem of Linux.
3503
3504 2008-08-30, Version 4.3.4
3505         * Build system: Improved detection of and linking with the statgrab
3506           library.
3507         * collectd: Portability fixes, especially to determine endianness more
3508           reliable.
3509         * Various plugins: Fix format strings.
3510         * disk plugin: A fix for giving disks under Linux 2.4 the right names
3511           again has been applied.
3512         * memcached plugin: Fix a too short timeout and a related file
3513           descriptor leak.
3514         * memory plugin: A typo in the libstatgrab code has been fixed.
3515         * network plugin: A fix in the initialization function solves problems
3516           under Solaris.
3517         * nginx plugin: A thread-unsafe function has been replaced.
3518         * vserver plugin: A thread-unsafe function has been replaced.
3519         * wireless plugin: A work-around for broken wireless drivers has been
3520           added.
3521
3522 2008-04-22, Version 4.3.3
3523         * build system: Improved detection of several libraries, especially if
3524           they are in non-standard paths.
3525         * build system: Portability fixes: Automatically define "_REENTRANT"
3526           if the libc expects it.
3527         * collectd: Error and warning messages have been improved.
3528         * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
3529           using them.
3530         * apache plugin: Allocate new memory when reading a webpage instead of
3531           using a buffer of static size.
3532         * exec plugin: Close (almost) all filedescriptors before exec(2)ing
3533           the program.
3534         * hddtemp plugin: Error and warning messages have been improved.
3535         * sensors plugin: Fix sensor collection for some chip types.
3536
3537 2008-03-29, Version 4.3.2
3538         * collectd: Fix configuration of the `FailureMax', `WarningMax', and
3539           `Persist' threshold options.
3540         * collectd: Fix handling of missing values in the global value cache.
3541         * collectd: Improved error messages when parsing the configuration.
3542         * sensors plugin: Fix temperature collection with libsensors4.
3543         * unixsock plugin: Fix mixed input and output operation on streams.
3544         * wireless plugin: Fix reading noise value.
3545
3546 2008-03-05, Version 4.3.1
3547         * exec plugin: Set supplementary group IDs.
3548         * network plugin:
3549           + Use `memcpy' when constructing/parsing a package to avoid
3550             alignment problems on weird architectures, such as Sparc.
3551           + Translate doubles to/from the x86 byte representation to ensure
3552             cross-platform compatibility.
3553         * ping plugin: Correct the handling of the `TTL' setting.
3554         * swap plugin: Reapply a patch for Solaris.
3555         * tcpconns plugin: Portability improvements.
3556
3557 2008-02-18, Version 4.3.0
3558         * collectd: Notifications have been added to the daemon. Notifications
3559           are status messages that may be associated with a data instance.
3560         * collectd: Threshold checking has been added to the daemon. This
3561           means that you can configure threshold values for each data
3562           instance. If this threshold is exceeded a notification will be
3563           created.
3564         * collectd: The new `FQDNLookup' option tells the daemon to use the
3565           full qualified domain name as the hostname, not just the host part
3566           es returned by `gethostname(2)'.
3567         * collectd: Support for more than one `TypesDB' file has been added.
3568           This is useful when one such file is included in a package but one
3569           wants to add custom type definitions.
3570         * collectd: The `Include' config option has been expanded to handle
3571           entire directories and shell wildcards.
3572         * collectdmon: The new `collectdmon' binary detects when collectd
3573           terminates and automatically restarts it again.
3574         * csv plugin: The CSV plugin is now able to store counter values as a
3575           rate, using the `StoreRates' configuration option.
3576         * exec plugin: Handling of notifications has been added and the
3577           ability to pass arguments to the executed programs has been added.
3578         * hddtemp plugin: The new `TranslateDevicename' option lets you
3579           disable the translation from device names to major-minor-numbers.
3580         * logfile plugin: Handling of notifications has been added.
3581         * ntpd plugin: The new `ReverseLookups' can be used to disable reverse
3582           domain name lookups in this plugin.
3583         * perl plugin: Many internal changes added support for handling multiple
3584           threads making the plugin reasonably usable inside collectd. The API has
3585           been extended to support notifications and export global variables to
3586           Perl plugins; callbacks now have to be identified by name rather than a
3587           pointer to a subroutine. The plugin is no longer experimental.
3588         * uuid plugin: The new UUID plugin sets the hostname to an unique
3589           identifier for this host. This is meant for setups where each client
3590           may migrate to another physical host, possibly going through one or
3591           more name changes in the process. Thanks to Richard Jones from
3592           Red Hat's Emerging Technology group for this plugin.
3593         * libvirt: The new libvirt plugin uses the `libvirt' library to query
3594           CPU, disk and network statistics about guest systems on the same
3595           physical server. Thanks to Richard Jones from Red Hat's Emerging
3596           Technology group for this plugin.
3597
3598 2008-04-22, Version 4.2.7
3599         * build system: Improved detection of several libraries, especially if
3600           they are in non-standard paths.
3601         * build system: Portability fixes: Automatically define "_REENTRANT"
3602           if the libc expects it.
3603         * collectd: Error and warning messages have been improved.
3604         * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
3605           using them.
3606         * apache plugin: Allocate new memory when reading a webpage instead of
3607           using a buffer of static size.
3608         * exec plugin: Close (almost) all filedescriptors before exec(2)ing
3609           the program.
3610         * hddtemp plugin: Error and warning messages have been improved.
3611         * sensors plugin: Fix sensor collection for some chip types.
3612
3613 2008-03-29, Version 4.2.6
3614         * collectd: Improved error messages when parsing the configuration.
3615         * sensors plugin: Fix temperature collection with libsensors4.
3616         * unixsock plugin: Fix mixed input and output operation on streams.
3617         * wireless plugin: Fix reading noise value.
3618
3619 2008-03-04, Version 4.2.5
3620         * apache plugin: Improved initialization and error messages.
3621         * exec plugin: Set supplementary group IDs.
3622         * network plugin:
3623           + Create separate threads for reading from the socket and parsing
3624             and dispatching incoming packets. Versions prior to this may have
3625             problems in high-load situations, where the socket receive buffers
3626             overflows, resulting in gaps in the data.
3627           + Use `memcpy' when constructing/parsing a package to avoid
3628             alignment problems on weird architectures, such as Sparc.
3629           + Translate doubles to/from the x86 byte representation to ensure
3630             cross-platform compatibility.
3631         * ping plugin: Correct the handling of the `TTL' setting.
3632         * rrdtool plugin: Ensure correct handling of the `RRATimespan' option.
3633         * swap plugin: Reapply a patch for Solaris.
3634         * tcpconns plugin: Portability improvements.
3635
3636 2008-01-21, Version 4.2.4
3637         * unixsock plugin: A bug in the unixsock plugin caused it not to set
3638           the permission on the socket as documented in the manpage. Thanks to
3639           Evgeny Chukreev for fixing this issue.
3640         * collectd: The documentation has been improved.
3641
3642 2007-12-28, Version 4.2.3
3643         * sensors plugin: Updated the plugin to build and work with version 3
3644           of the libsensors library.
3645
3646 2007-12-15, Version 4.2.2
3647         * nginx plugin: Incorrect comparison of strings lead to a segfault
3648           when using the plugin. Thanks to Saulius Grigaliunas for fixing
3649           this.
3650         * logfile plugin: The config option `Timestamp' was handled
3651           incorrectly and basically always active. Thanks to Luke Heberling
3652           for fixing this.
3653
3654 2007-11-08, Version 4.2.1
3655         * tcpconns plugin: Don't complain about a missing file if IPv6 is not
3656           enabled on the host.
3657         * snmp plugin: Fix a memory leak.
3658
3659 2007-10-27, Version 4.2.0
3660         * collectd: The new config option `Include' lets you include other
3661           configfiles and thus split up your config into smaller parts. This
3662           may be especially interesting for the snmp plugin to keep the data
3663           definitions separate from the host definitions.
3664         * ipvs plugin: The new `ipvs' plugin collects IPVS connection statistics
3665           (number of connections, octets and packets for each service and
3666           destination). Thanks to Sebastian Harl for this plugin.
3667         * memcached plugin: The new `memcached' plugin connects to a memcached
3668           daemon process and collects statistics of this distributed caching
3669           system. Thanks to Antony Dovgal for contributing this plugin.
3670         * nginx plugin: The new `nginx' plugin reads the status page of an
3671           nginx daemon and saves the handled connections and requests.
3672         * perl plugin: Many changes, including the added `EnableDebugger'
3673           config option which lets you debug your Perl plugins more easily.
3674         * rrdtool plugin: Use the thread-safe RRD-library if available. Try to
3675           be more thread-safe otherwise by locking calls to the library.
3676         * snmp plugin: Added the options `Scale' and `Shift' to Data-blocks to
3677           correct the values returned by SNMP-agents. If a <data> block is
3678           defined as `table' the instance is now optional. The sequence number
3679           is used as the type-instance in this case. The new `InstancePrefix'
3680           option allows to add arbitrary prefixes to the type-instance.
3681         * tcpconns plugin: The new `tcpconns' plugin collects the number of
3682           certain TCP connections and what state they're in. This can be used
3683           to see how many connections your FTP server has to handle or how
3684           many outgoing connections your mailserver has open.
3685
3686 2008-01-11, Version 4.1.6
3687         * unixsock plugin: A bug in the unixsock plugin caused it not to set
3688           the permission on the socket as documented in the manpage. Thanks to
3689           Evgeny Chukreev for fixing this issue.
3690         * collectd: The documentation has been improved.
3691
3692 2007-12-27, Version 4.1.5
3693         * rrdtool plugin: Fix a memory leak that only occurred in very-low-
3694           memory situations.
3695         * sensors plugin: Updated the plugin to build and work with version 3
3696           of the libsensors library.
3697
3698 2007-11-08, Version 4.1.4
3699         * Build system: Improve detection of the rrd library, especially if
3700           it's in a non-standard location.
3701         * Build system: A bug when parsing the argument for
3702           `--with-libnetsnmp' has been fixed.
3703         * collectd: Implement `strerror_r' if the libc doesn't provide it.
3704         * rrdtool plugin: Fix a bug in the shutdown sequence that might cause
3705           a deadlock or delay when shutting down the daemon.
3706         * snmp plugin: Fix a memory leak.
3707
3708 2007-10-24, Version 4.1.3
3709         * collectd: A build issue under Solaris has been resolved by renaming
3710           data types.
3711         * rrdtool plugin: Use the thread-safe RRD-library if available. Try to
3712           be more thread-safe otherwise by locking calls to the library.
3713
3714 2007-09-28, Version 4.1.2
3715         * apcups plugin: Fix reporting of the `load percent' data.
3716         * wireless plugin: Correct the handling of cards returning signal and
3717           noise quality as percentage.
3718         * perl plugin: Fix a possible buffer overflow in get_module_name().
3719         * build system: Further improve the detection of libraries.
3720         * netlink plugin: Build issues under some older versions of the Linux
3721           includes (i. e. Debian Sarge) have been fixed.
3722         * snmp plugin: Fix a potential segfault when a host times out. Add
3723           support for the `timeticks' type. 
3724
3725 2007-09-12, Version 4.1.1
3726         * Build system: The detection of `libnetlink' has been improved.
3727         * collectd: The documentation has been fixed in numerous places.
3728         * exec plugin: Setting the group under which to run a program has been
3729           fixed.
3730         * collectd: The `sstrerror' function was improved to work correctly
3731           with the broken GNU version of `strerror_r'.
3732         * collectd: Write an error message to STDERR when loading of a plugin
3733           fails.
3734         * apcups plugin: Fix the `types' used to submit the values: They still
3735           has an `apcups_' prefix which doesn't work anymore.
3736         * rrdtool plugin: Create new RRD-files with the `begin' time set to
3737           whatever the client thinks is `now'..
3738
3739 2007-09-01, Version 4.1.0
3740         * Build system: The build system has been changed to automatically
3741           disable all plugins, which are missing dependencies. The dependency
3742           checking has been removed from the plugins themselves to remove
3743           redundancy.
3744         * Flexible interval: The interval of collected data is now sent along
3745           with the data itself over the network, so that the interval-settings
3746           of server and clients no longer needs to match.
3747         * netlink plugin: The new `netlink' plugin connects to the Linux
3748           kernel using a netlink socket and uses it to query information about
3749           interfaces, qdiscs and classes.
3750         * rrdtool plugin: The cache is now dumped to disk in an extra thread
3751           to not block data collection.
3752         * snmp plugin: The new `snmp' plugin can read values from SNMP enabled
3753           network devices, such as switches, routers, thermometers, rack
3754           monitoring servers, etc. The collectd-snmp(5) manpage documents this
3755           plugin.
3756         * unixsock plugin: Added the `LISTVAL' command.
3757         * xmms plugin: The new `xmms' plugin graphs the bitrate and frequency
3758           of music played with xmms.
3759
3760 2007-09-28, Version 4.0.9
3761         * apcups plugin: Fix reporting of the `load percent' data.
3762         * wireless plugin: Correct the handling of cards returning signal and
3763           noise quality as percentage.
3764         * perl plugin: Fix a possible buffer overflow in get_module_name().
3765
3766 2007-09-12, Version 4.0.8
3767         * collectd: The `sstrerror' function was improved to work correctly
3768           with the broken GNU version of `strerror_r'.
3769         * collectd: Write an error message to STDERR when loading of a plugin
3770           fails.
3771         * apcups plugin: Fix the `types' used to submit the values: They still
3772           has an `apcups_' prefix which doesn't work anymore.
3773         * rrdtool plugin: Create new RRD-files with the `begin' time set to
3774           whatever the client thinks is `now'..
3775
3776 2007-08-26, Version 4.0.7
3777         * documentation: Some typos have been fixed and some information has
3778           been improved.
3779         * build system: Many fixes for detecting libraries in unusual places,
3780           such as on RedHat systems. The affected libraries are `libcurl',
3781           `libmysql', and `libupsclient'.
3782         * network plugin: Allow the `Port' option to be specified as a number
3783           (i. e. without quotes).
3784         * nut plugin: A fix allows linking the nut plugin against
3785           libupsclient, version >= 2.2.0.
3786         * processes plugin: Fix a potential segmentation fault.
3787
3788 2007-07-30, Version 4.0.6
3789         * sensors plugin: Fix the ignorelist functionality: Only the `type
3790           instance' was used to match against the list, but the documentation
3791           told otherwise. This release fixes the code, so it complies with the
3792           documentation.
3793         * syslog plugin: Call `openlog' right when the plugin is loaded, so
3794           configuration messages will end up in the logging facility.
3795         * conrtib/fedora: The contributed specfile for Fedora has been
3796           updated.
3797
3798 2007-07-05, Version 4.0.5
3799         * Portability: More fixes for OpenBSD have been included.
3800
3801 2007-06-24, Version 4.0.4
3802         * cpu plugin: Fixed the Solaris code.
3803         * dns plugin: Fixed a build issue for OpenBSD.
3804         * interface plugin: Fixed the Solaris code.
3805         * load plugin: Fixed the alternative `/proc' Linux code.
3806         * memory plugin: Fixed the Solaris code.
3807         * oconfig: Don't require `-lfl' anymore.
3808
3809 2007-06-19, Version 4.0.3
3810         * cpu plugin: Fix the Darwin / Mac OS X code.
3811         * ping plugin: Use the return value of `getpid', not its address.
3812         * csv, rrdtool plugin: Fixed a bug that prevented an buffer to be
3813           initialized correctly.
3814         * configure: Added `--with-nan-emulation' to aid cross compilation.
3815
3816 2007-06-12, Version 4.0.2
3817         * hddtemp and ntpd plugin: Corrected the parsing of port numbers when
3818           they're given in numerically form.
3819
3820 2007-06-07, Version 4.0.1
3821         * iptables plugin: A bug in the configuration routine has been fixed.
3822           Setting a comment in the configfile will no longer cause a
3823           segmentation fault.
3824
3825 2007-06-03, Version 4.0.0
3826         * collectd: The plugin-infrastructure has been changed to allow for
3827           more types of plugins, namely `write' and `log' plugins.
3828         * collectd: The read-function has been changed to read many plugins in
3829           parallel, using threads. Thus, plugins generally need to use
3830           thread-safe functions from now on.
3831         * collectd: The '-t' command line options allows to perform syntax tests
3832           of the configuration file and exit immediately.
3833         * csv plugin: The new `csv' plugin handles output to `comma separated
3834           values'-files.
3835         * rrdtool plugin: The new `rrdtool' plugin handles output to
3836           RRD-files. Data can be cached to combine multiple updates into one
3837           write to increase IO-performance.
3838         * network plugin: The new `network' plugin handles IO via the network.
3839           It implements a different, much more extensible protocol which can
3840           combine many values in one packet, decreasing the number of UDP-
3841           packets being sent. It can read from and send to the network and
3842           with the appropriate configuration even forward packets to other
3843           networks.
3844         * unixsock plugin: The new `unixsock' plugin provides an interface to
3845           communicate with the daemon while it is running. Right now the
3846           commands `GETVAL' and `PUTVAL' are implemented, but more are to
3847           come.
3848         * perl plugin: The new `perl' plugin allows you to write extensions
3849           for collectd in the scripting-language Perl.
3850         * logfile plugin: The new `logfile' plugin writes logmessages to files
3851           or STDOUT or STDERR.
3852         * syslog plugin: The new `syslog' plugin sends logmessages to the
3853           system's syslog daemon.
3854         * entropy plugin: The new `entropy' plugin collects the amount of
3855           entropy currently being available to the system.
3856         * exec plugin: The new `exec' plugin forks child processes and reads
3857           back values provided by the forked processes.
3858         * iptables plugin: The new `iptables' plugin reads counters from
3859           iptables rules. Thanks to Sjoerd van der Berg for contributing this
3860           plugin.
3861         * irq plugin: The new `irq' plugin collects the IRQ-counters. Thanks
3862           to Peter Holik for contributing this plugin.
3863         * nut plugin: The new `nut' plugin connects the upsd of the `network
3864           ups tools' and reads information about the connected UPS.
3865         * apache plugin: Support for lighttpd's `BusyServers' (aka.
3866           connections) field was added by Florent Monbillard.
3867         * collectd-nagios: The new `collectd-nagios' binary queries values
3868           from collectd, parses them and exits according to Nagios-standards.
3869         * manpages: The manpages have been improved a lot.
3870
3871 2007-09-28, Version 3.11.7
3872         * wireless plugin: Correct the handling of cards returning signal and
3873           noise quality as percentage.
3874
3875 2007-08-31, Version 3.11.6
3876         * processes plugin: Fix a potential segmentation fault.
3877
3878 2007-05-29, Version 3.11.5
3879         * configure: Added `AC_SYS_LARGEFILE' for LFS.
3880         * ntpd plugin: Fix a potential buffer overflow.
3881         * processes plugin: Fix a bug when run under Linux 2.4. All processes
3882           were accounted as `zombies'.
3883
3884 2007-04-10, Version 3.11.4
3885         * dns plugin: Change the order of includes to make the plugin compile
3886           under FreeBSD.
3887
3888 2007-03-30, Version 3.11.3
3889         * configure: Have the configure-script define `HAVE_LIBKSTAT' instead
3890           of the unused `COLLECT_KSTAT'.
3891
3892 2007-02-11, Version 3.11.2
3893         * plugin: Catch NULL-pointer and try to fix them. Otherwise the
3894           NULL-pointer may have been passed to `printf' which causes a
3895           segfault with some libcs.
3896
3897 2007-02-10, Version 3.11.1
3898         * df plugin: Some wrong defines have been fixed so the plugin works
3899           under Solaris again.
3900         * dns plugin: The usage of a struct has been fixed to work with
3901           non-GNU libcs.
3902         * processes plugin: Some missing defines have been added so the plugin
3903           compiles cleanly under FreeBSD and presumably other UNIXes.
3904
3905 2006-12-22, Version 3.11.0
3906         * collectd: The new command line option `-P' makes it easier for
3907           distributors to change the location of PID-files.
3908         * collectd: The daemon shuts down faster now which makes it easier to
3909           write init.d-scripts for it.
3910         * apache plugin: Increase the buffersize to 16k, because the 4k buffer
3911           caused problems every now and then.
3912         * df plugin: New config options allow to ignore certain mountpoints,
3913           filesystem types or devices.
3914         * dns plugin: The new dns plugin uses `libpcap' to capture DNS traffic
3915           and interprets it. It collects traffic as well as qtype, opcode and
3916           rcode counts.
3917         * email plugin: Sebastian Harl has contributed this plugin which
3918           counts received mails in categories (e. g. ham, spam, virus), spam
3919           score (as given by SpamAssassin) and check types.
3920         * mbmon plugin: Flavio Stanchina has contributed this plugin which
3921           uses `mbmon' to gather information from sensors on the motherboard.
3922         * processes plugin: Collect detailed statistics for configured
3923           processes, that's process and thread count, CPU usage, resident
3924           segment size and pagefaults.
3925         * multimeter plugin: Peter Holik contributed a new plugin which
3926           queries multimeters.
3927         * sensors plugin: Lubos Stanek has put much effort into improving this
3928           plugin, including `extended naming', collection of voltage values
3929           and the possibility to ignore certain values.
3930
3931 2006-12-21, Version 3.10.4
3932         * Max Kellermann has identified a bug in the server routine: When
3933           opening a socket fails the daemon will (re)try opening the socket in
3934           an endless loop, ultimately leading to a `EMFILE' error.
3935
3936 2006-11-04, Version 3.10.3
3937         * Lubos Stanek has identified a bug in the ntpd-plugin: When the
3938           ntpd's reply was sent in more than one packet, the buffer size was
3939           calculated incorrectly, resulting in the reading of uninitialized or
3940           freed memory.
3941
3942 2006-11-01, Version 3.10.2
3943         * The sample config file has been improved.
3944         * Errors in the manpages have been corrected.
3945         * The ping-plugin now adds hosts during initialization, not during
3946           startup. This speeds up startup when no network connectivity is
3947           available. Also, the hosts are being added later when the network is
3948           available.
3949         * Improved BSD-support for the df-plugin.
3950         * Fixed syntax errors in the swap-plugin for Mac OS X.
3951         * Fix a wrong structure being passed to `getnameinfo' in the ntpd-
3952           plugin.
3953         * Don't disable the mysql-plugin if connecting to the database fails
3954           during initialization. Instead, try again in increasing intervals.
3955
3956 2006-07-19, Version 3.10.1
3957         * A bug in the apcups plugin was fixed: Is the plugin is loaded, but
3958           the apcups cannot be reached, unconnected sockets will pile up and
3959           eventually lead to `Too many open files' errors.
3960
3961 2006-07-09, Version 3.10.0
3962         * The `disk' plugin has been ported to Darwin.
3963         * The `battery' plugin should work on many Apple computers now.
3964         * The `traffic' plugin can now ignore certain interfaces. Also,
3965           statistics for sent/received packets and errors have been added.
3966         * A plugin to monitor APC UPSes using `apcupsd' has been added. Thanks
3967           to Anthony Gialluca for contributing this plugin and providing me
3968           with a test environment :)
3969         * A plugin for monitoring an NTP instance and the local clock drift
3970           has been added.
3971
3972 2006-06-25, Version 3.9.4
3973         * The Solaris code in the `swap' plugin has been changed to reflect
3974           the numbers returned by `swap -s'. Thanks to Christophe Kalt for
3975           working this out.
3976         * The debugging system has been fixed to work with the Sun libc.
3977         * When built without librrd the variable `operating_mode' could be
3978           uninitialized. Thanks to David Elliot for reporting the bug.
3979
3980 2006-06-01, Version 3.9.3
3981         * Fixed the ping-plugin under FreeBSD and Mac OS X. Potentially other
3982           operating systems also profit from the changes, but I wasn't able to
3983           check that.
3984         * Changed the build system to find the netinet-includes under FreeBSD
3985           and therefore successfully build the `liboping' library there.
3986
3987 2006-05-09, Version 3.9.2
3988         * Applied a patch to the `liboping' library. Due to a bug in the
3989           sequence checking the `ping' plugin stopped working after
3990           approximately 7.6 days.
3991
3992 2006-05-09, Version 3.8.5
3993         * Applied a patch to the `liboping' library. Due to a bug in the
3994           sequence checking the `ping' plugin stopped working after
3995           approximately 7.6 days.
3996
3997 2006-04-21, Version 3.9.1
3998         * Build issues with Solaris and possible other architectures have been
3999           resolved.
4000         * Problems when building the `apache'-plugin without `libcurl' have
4001           been resolved.
4002         * A bug in the `ping' plugin has been fixed. Sorry folks.
4003
4004 2006-04-02, Version 3.9.0
4005         * A plugin to monitor the Apache webserver has been added.
4006           <http://httpd.apache.org/>
4007         * A plugin to collect statistics about virtual servers using VServer.
4008           <http://linux-vserver.org/> Thanks to Sebastian Harl for writing
4009           this plugin :)
4010         * A plugin for wireless LAN cards has been added. It monitors signal
4011           strength, link quality and noise ratio..
4012         * A plugin for Apple hardware sensors has been added.
4013         * An option to compile collectd with different `step' and `heartbeat'
4014           settings has been added. The size of RRAs is no longer static but
4015           calculated based on the settings for `step' and `width'.
4016         * The `ping' plugin can now be configured to use a certain TTL.
4017         * A plugin to monitor the hardware sensors of Apple computers has been
4018           added.
4019         * The plugins `cpu', `memory', `processes' and `traffic' have been
4020           ported to Mach/Darwin (Mac OS X).
4021         * The `log mode' has been contributed by Christophe Kalt. It writes
4022           the data into text files rather than RRD files.
4023
4024 2006-04-09, Version 3.8.4
4025         * Applied patch by Vincent Stehlé which improves the disk-name
4026           resolution in the `hddtemp' plugin for Linux systems.
4027
4028 2006-04-02, Version 3.8.3
4029         * Applied a patch by James Byers: The MySQL plugin was not working
4030           with MySQL 5.0.2 or later.
4031
4032 2006-03-14, Version 3.8.2
4033         * `utils_mount.c' has been changed to not use the `MNTTAB' defined by
4034           the GNU libc, because it points to `/etc/fstab' rather than
4035           `/etc/mtab'.
4036
4037 2006-03-13, Version 3.8.1
4038         * Fixes for building collectd under FreeBSD, Mac OS X and Solaris.
4039         * Fixes in the debian `postinst' and `init.d' scripts.
4040
4041 2006-03-09, Version 3.8.0
4042         * The `ping' plugin no longer uses `libping' but a self written
4043           library named `liboping'. With this library it's possible to ping
4044           multiple IPv4 and IPv6 addresses and hostnames - in parallel.
4045
4046 2006-02-18, Version 3.7.2
4047         * A simple bug in the `battery' plugin has been fixed. It should now
4048           work with ACPI based batteries as well. Thanks to Sebastian for
4049           fixing this.
4050         * Fixing a bug that prevented collectd to be built without librrd.
4051           Thanks to Werner Heuser for reporting it.
4052
4053 2006-02-04, Version 3.7.1
4054         * The new network code has been improved to build with older versions
4055           of glibc.
4056         * Fix in `libping' sets the ICMP sequence on outgoing packets. Thanks
4057           to Tommie Gannert for this patch.
4058
4059 2006-01-30, Version 3.7.0
4060         * The `battery' plugin has been added. It collects information about
4061           laptop batteries..
4062         * The MySQL plugin has been improved: It now writes two more RRD
4063           files, `mysql_qcache.rrd' and `mysql_threads.rrd'.
4064         * The `cpufreq' plugin now reads another file since the file it did
4065           read so far causes much overhead in the kernel. Also, you need root
4066           to read the old file, but not to read the new one.
4067         * The `hddtemp' plugin can now be configured to connect to another
4068           address and/or port than localhost.
4069         * The `df' plugin now prefers `statvfs' over `statfs'.
4070         * The network code has been rewritten. collectd now supports unicast
4071           and multicast, and IPv4 and IPv6. Also, the TTL of sent packages can
4072           be set in the configfile.
4073
4074 2006-01-24, Version 3.6.2
4075         * Due to a bug in the configfile handling collectd wouldn't start in
4076           client mode. This released fixes this.
4077
4078 2006-01-20, Version 3.6.1
4079         * Due to a bug in `configure.in' all modules and the binary were
4080           linked against `libmysqlclient'. This issue is solved by this
4081           release.
4082
4083 2006-01-17, Version 3.6.0
4084         * A config file has been added. This allows for loading only specific
4085           plugins.
4086         * A `df' plugin has been added.
4087         * A `mysql' plugin has been added.
4088         * The `ping' plugin doesn't entirely give up hope when a socket error
4089           occurred, but will back of and increase the intervals between tries.
4090
4091 2006-01-21, Version 3.5.2
4092         * Fixed yet another bug in the signal handling.. Stupid typo..
4093         * Improved the ping plugin to not give up on socket errors (backport
4094           from 3.6.0).
4095
4096 2005-12-18, Version 3.5.1
4097         * The PID-file is now deleted correctly when shutting down the daemon.
4098         * SIGINT and SIGTERM are now handled correctly.
4099
4100 2005-12-16, Version 3.5.0 (Revision 326)
4101         * A bug in the `load' module under Solaris has been fixed.
4102         * The `users' module has been contributed by Sebastian Harl. It counts
4103           currently logged in users.
4104         * The CPU module now works under FreeBSD without the use of
4105           `libstatgrab', however SMP support is missing.
4106         * The default directories for the RRD files and the PID file now
4107           depend on the compile time setting of `localstatedir'.
4108
4109 2005-11-15, Version 3.4.0 (Revision 236)
4110         * A PID-file is written to /var/run upon startup. Thanks to `Tommie'
4111           from gentoo's bugzilla for writing the patch.
4112         * The build dependency for librrd has been removed. Binaries built
4113           without librrd are client-only and will multicast their value as
4114           with the `-c' argument.
4115         * A patch by Peter Holik adds a module for monitoring CPU frequencies.
4116         * The newly introduced `-f' switch prevents daemon initialization
4117           (forking, closing standard filehandles, etc.) Thanks to Alvaro
4118           Barcellos for this patch.
4119
4120 2005-11-04, Version 3.3.0 (Revision 216)
4121         * New modules have been added:
4122           - `serial', for monitoring traffic on the serial interfaces
4123           - `nfs', for graphing NFS procedure calls
4124           - `tape', traffic from/to tape devices
4125         * The memory.rrd now accepts more than 4Gig of memory.
4126
4127 2005-10-26, Version 3.2.0 (Revision 200)
4128         * Support for graphing the processes has been added (thanks to Lyonel
4129           Vincent)
4130         * If reading from hddtemp fails collectd will increase the time
4131           between polls up to one day.
4132         * The init.d files have been improved.
4133         * Problems with the spec file have been fixed.
4134
4135 2005-10-16, Version 3.1.0 (Revision 194)
4136         * Added the `setsid' syscall to the startup code.
4137         * Support for hddtemp has been added (thanks to Vincent Stehlé)
4138
4139 2005-09-30, Version 3.0.0 (Revision 184)
4140         * The ability to send/receive data to/from the network (think
4141           multicast) has been added.
4142         * Modules have been split up into shared libraries can be loaded at
4143           runtime. The biggest advantage is that the core program doesn't need
4144           to be linked against an external library.
4145         * A patch by George Kargiotakis has been applied: It fixes the sensors
4146           behaviour then more than one sensor is being queried.
4147
4148 2005-09-16, Version 2.1.0 (Revision 172)
4149         * A module for swap statistics has been added.
4150
4151 2005-09-09, Version 2.0.0 (Revision 135)
4152         * Filenames can no longer be configured at program startup. The only
4153           options as of this version are the directory and ping hosts.
4154         * CPU statistics now include Wait-IO. If provided under Linux IRQ and
4155           Soft-IRQ statistics are added to `System'. 
4156         * Diskstats now collect read and write bytes, not sectors.
4157         * Ping statistics can now be collected for more than one host. There
4158           is no default any more: If no host is given no host will be pinged.
4159         * A self-written patch for libping has been applied so it builds
4160           cleanly.
4161
4162 2005-09-01, Version 1.8.1 (Revision 123)
4163         * Much improved configure-script: libraries and features may now be
4164           disabled.
4165         * More detailed warnings/error messages when RRD update fails.
4166
4167 2005-08-29, Version 1.8.0:
4168         * Support for collecting disk statistics under Solaris.
4169
4170 2005-08-25, Version 1.7.0:
4171         * Support for libstatgrab[1] for load, memory usage and network
4172           traffic. CPU- and disk-usage are not (yet) supported, since
4173           libstatgrab returns insufficient information. I will contact the
4174           authors.
4175         * Improved the CPU-initialization code for Solaris. Apparently CPUs
4176           aren't necessarily counted linear which is now handled correctly.
4177         [1]: http://www.i-scream.org/libstatgrab/
4178
4179 2005-08-21, Version 1.6.0:
4180         * Basic support for Solaris: System load and cpu-usage can be
4181           collected under Solaris, too. Other stats will follow later.
4182         * Many fixes in the autoconf-script
4183         * Collection/Museum scripts have been added under contrib/museum
4184         * collectd may now be started in unprivileged mode, though ping
4185           statistics will not work.
4186
4187 2005-07-17, Version 1.5.1:
4188         * Diskstats-RRDs now use major/minor for naming. Some systems have
4189           weird strings as disk-names..
4190
4191 2005-07-17, Version 1.5:
4192         * A new module, diskstats, has been added. It collects information
4193           about the disks and partitions.
4194
4195 2005-07-11, Version 1.4.2:
4196         * The meminfo module has been changed to work with more platforms
4197           and/or kernel versions.
4198
4199 2005-07-10, Version 1.4.1: Correct traffic stats
4200         * The traffic rrd-file is now created with DS-type `COUNTER' which I
4201           forgot to correct when I changed that module.
4202
4203 2005-07-09, Version 1.4: More traffic stats
4204         * Traffic is now collected for all interfaces that can be found
4205         * Temperature-statistics are read from lm-sensors if available
4206
4207 2005-07-08, Version 1.3: CPU stats
4208         * Collecting CPU statistics now
4209
4210 2005-07-12, Version 1.2: Using syslog
4211         * collectd is now using the syslog facility to report errors, warnings
4212           and the like..
4213         * The default directory is now /var/db/collectd
4214
4215 2005-07-10, Version 1.1: Minor changes
4216         * Nothing really useful to say ;)
4217
4218 2005-07-09, Version 1.0: Initial Version
4219         * The following modules are provided:
4220           * Load average
4221           * Ping time
4222           * Traffic
4223           * Memory info