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