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