contrib/exec-nagios.px: Make it possible to run the same script multiple times.
[collectd.git] / ChangeLog
index fc72191..2c1f8d8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,278 @@
+2009-02-22, Version 4.5.3
+       * build system: The check for libupsclient even when `pkg-config' is
+         not available.
+       * collectd: Fix error handling in the global cache.
+       * Collectd::Unixsock: Error handling has been improved.
+       * ascent plugin: Fix a memory leak. Thanks to Bruno Prémont for his
+         patch.
+       * ipmi plugin: Fix an off-by-one error which could cause segmentation
+         faults. Thanks to Peter Holik for his patch.
+       * tcpconns plugin: An endianness problem has been fixed in the *BSD
+         code. Thanks to "thated" for reporting this.
+
+2009-01-02, Version 4.5.2
+       * build system: Check for `mysql.h' and `mysql/mysql.h', since the
+         file may be in both locations, especially when the database was
+         installed in a non-standard path. Thanks to Dusty Doris for
+         reporting this.
+       * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
+         Solaris, in the configure script automatically.
+       * build system, tcpconns plugin: Check for `kvm_nlist' and
+         `kvm_openfiles' before enabling the plugin: Solaris provides a KVM
+         library with similar functions to the BSD variant, but doesn't
+         provide these necessary functions.
+       * collectd.conf(5): Various fixes and clarifications.
+       * collectd: Remove a GNUism (unnamed unions), thus improving
+         portability.
+       * collectd, apcups plugin: Include "collectd.h" before <stdlib.h>.
+         This solves portability problems, especially for Solaris.
+       * dns plugin: Fix a portability problem with NetBSD.
+       * filecount plugin: Fix an off-by-one error. This error may cause a
+         segmentation fault.
+       * network plugin: Fix the handling of `type' in the network protocol.
+         Due to a programming mistake, only 4 or 8 bytes would be copied to a
+         much larger buffer. This caused the `type' to be transferred much
+         more often than necessary. In some cases, e. g. the `cpu' and
+         `cpufreq' plugins being used at the same time, data may be corrupted
+         in those files. Thanks to Bruno Prémont for debugging and reporting
+         this issue.
+       * processes plugin: Fix a possible segmentation fault when specifying
+         invalid configuration options.
+       * unixsock plugin: Make sure the initialization function is run only
+         once. This resolves a file descriptor leak under systems which run
+         the initialization more than once, such as Solaris.
+
+2008-10-16, Version 4.5.1
+       * build system: Change `--enable-<plugin>' to abort with an error if
+         dependencies are not met. Thanks to Bruno Prémont for the patch.
+         Also, the poisoning of various string functions has been restricted
+         to debug builds.
+       * collectd: Fix a memory leak in the global value cache. With every
+         *missing* value a couple of bytes would be leaked. Another memory
+         leak in the configuration handling code has been fixed. Thanks to
+         Niraj Tolia for reporting these issues.
+       * collectd: Fix an off-by-one error in the ignorelist functionality.
+         When using regular expressions, the last character would be missing,
+         possibly matching differently from what one would expect.
+       * collectdmon: Don't block SIGCHLD. This fixes a potential portability
+         problem.
+       * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
+         Linzberger for reporting the bug.
+       * iptables plugin: Fix an off-by-one error. If a string was just one
+         character too long, it was truncated instead of reporting an error.
+       * network plugin: Fix a memory leak in the configuration handling
+         code. Thanks to Niraj Tolia for reporting this issue.
+       * perl plugin: Log an error message if bootstrapping `Collectd' fails.
+       * postgresql plugin: Don't reopen connection during reinitialization.
+         This fixes a bug under Solaris and potentially other platforms.
+         Missing calls to `PQclear' have been added, too. This fixes memory
+         leaks. Thanks to ``Admin'' for reporting these bugs.
+       * snmp plugin: Don't expect null-terminated strings from the Net-SNMP
+         library.
+       * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
+         problems with some `libc's. Thanks to Matthias Lay for reporting the
+         bug.
+
+2008-09-04, Version 4.5.0
+       * collectd: Added the ability to flush certain identifiers.
+       * collectd: The concept of `notification meta data' has been
+         introduced.
+       * filecount plugin: The new filecount plugin counts the number of
+         files in a directory and its subdirectories.
+       * ipmi plugin: Sensor names have been changed to ensure unique names.
+         Notifications upon added and removed sensors can now be generated.
+       * notify_desktop plugin: This new plugin sends notifications to the
+         X desktop using the structure defined in the `Desktop Notification
+         Specification'.
+       * notify_email plugin: This new plugin sends out notifications via
+         email, using the `esmtp' library.
+       * onewire plugin: The new experimental(!) onewire plugin reads values,
+         such as temperatures, from sensors connected to the computer via the
+         onewire bus.
+       * perl plugin: Improved synchronized access to internal data structures
+         and fixed a possible dead-lock.
+       * perl plugin: Added the ability to flush certain identifiers and marked
+         plugin_flush_all() and plugin_flush_one() as deprecated in favor of
+         plugin_flush().
+       * perl plugin: Added the ability to configure Perl plugins.
+       * postgresql plugin: The new postgresql plugin collects statistics
+         about or from a PostgreSQL database.
+       * processes plugin: The `ProcessMatch' option has been added.
+       * rrdtool plugin: Implement throttling of the `update queue' to lessen
+         IO load.
+       * tcpconns plugin: This plugin has been ported to OpenBSD.
+       * thermal plugin: The new thermal plugin collects system temperatures
+         using Linux ACPI thermal zone data.
+
+2009-01-02, Version 4.4.5
+       * build system: Check for `mysql.h' and `mysql/mysql.h', since the
+         file may be in both locations, especially when the database was
+         installed in a non-standard path. Thanks to Dusty Doris for
+         reporting this.
+       * build system: Handle the _POSIX_PTHREAD_SEMANTICS defined, needed by
+         Solaris, in the configure script automatically.
+       * collectd.conf(5): Various fixes and clarifications.
+       * apcups plugin: Include "collectd.h" before <stdlib.h>. This solves
+         portability problems, especially for Solaris.
+       * dns plugin: Fix a portability problem with NetBSD.
+       * network plugin: Fix the handling of `type' in the network protocol.
+         Due to a programming mistake, only 4 or 8 bytes would be copied to a
+         much larger buffer. This caused the `type' to be transferred much
+         more often than necessary. In some cases, e. g. the `cpu' and
+         `cpufreq' plugins being used at the same time, data may be corrupted
+         in those files. Thanks to Bruno Prémont for debugging and reporting
+         this issue.
+       * unixsock plugin: Make sure the initialization function is run only
+         once. This resolves a file descriptor leak under systems which run
+         the initialization more than once, such as Solaris.
+
+2008-10-16, Version 4.4.4
+       * build system: Change `--enable-<plugin>' to abort with an error if
+         dependencies are not met. Thanks to Bruno Prémont for the patch.
+         Also, the poisoning of various string functions has been restricted
+         to debug builds.
+       * collectd: Fix a memory leak in the global value cache. With every
+         *missing* value a couple of bytes would be leaked. Another memory
+         leak in the configuration handling code has been fixed. Thanks to
+         Niraj Tolia for reporting these issues.
+       * collectd: Fix an off-by-one error in the ignorelist functionality.
+         When using regular expressions, the last character would be missing,
+         possibly matching differently from what one would expect.
+       * collectdmon: Don't block SIGCHLD. This fixes a potential portability
+         problem.
+       * collectd-nagios: Fix handling of the `-d' option. Thanks to Fabian
+         Linzberger for reporting the bug.
+       * network plugin: Fix a memory leak in the configuration handling
+         code. Thanks to Niraj Tolia for reporting this issue.
+       * perl plugin: Log an error message if bootstrapping `Collectd' fails.
+       * tail plugin: Call `clearerr(3)' after reading an EOF. This fixes
+         problems with some `libc's. Thanks to Matthias Lay for reporting the
+         bug.
+
+2008-09-01, Version 4.4.3
+       * collectd: Fix a memory leak in the threshold checking code.
+       * memcached plugin: Fix a too short timeout and a related file
+         descriptor leak.
+       * memory plugin: A typo in the libstatgrab code has been fixed.
+       * snmp plugin: Fix a possible memory leak.
+
+2008-07-15, Version 4.4.2
+       * build system: Use pkg-config to detect the upsclient library.
+       * collectd: Try even harder to determine the endianess of the
+         architecture collectd is being built on.
+       * disk plugin: Fix for Linux 2.4: A wrong field was used as the name
+         of disks.
+       * dns plugin: Fix compilation errors with BIND versions 19991001
+         through 19991005.
+       * network plugin: Bugfix in the init routine: The init function
+         cleared a buffer regardless of its contents. This could lead to lost
+         values under Solaris.
+       * nginx plugin: Remove usage of the thread-unsafe `strtok' function.
+       * vserver plugin: Remove usage of the thread-unsafe `readdir'
+         function.
+       * wireless plugin: Work around incorrect noise and power values
+         returned by some broken drivers.
+
+2008-06-03, Version 4.4.1
+       * collectd: Fix the `DataSource' option within `Type' blocks. Thanks
+         to kyrone for reporting this.
+       * collectd: Fixed min/max output in notifications generated by
+         threshold checking.
+       * collectd-nagios: Fix the protocol used to communicate with the
+         daemon.
+       * perl plugin: Fail noisily, but don't shutdown the daemon, if
+         initialization has errors. An issue with Perl 5.10 has been fixed.
+       * teamspeak2 plugin: Fixed an out of bound array access. Thanks to
+         René Rebe and Siegmund Gorr for reporting this.
+
+2008-05-06, Version 4.4.0
+       * collectd: Internal code cleanups.
+       * collectd: Added support for a `Flush' command in the unixsock and
+         exec plugins. This command can be used to force a plugin (or all) to
+         flush its values to disk.
+       * collectd: Thresholds can now be configured to apply to one data
+         source only, making it possible to configure different thresholds
+         for each data source.
+       * apache, nginx plugins: Added the possibility to disable host and/or
+         peer verification.
+       * ascent plugin: The new ascent plugin reads and parses the statistics
+         page of an Ascent server.
+       * cpu plugin: Support for the statgrab library has been added.
+       * disk plugin: The possibility to ignore certain disks or collect only
+         specific disks has been added.
+       * disk plugin: Support for the statgrab library has been added.
+       * ipmi plugin: The new ipmi plugin uses the OpenIPMI library to read
+         sensor values via IPMI, the intelligent platform management
+         interface.
+       * iptables plugin: The iptc library that is used by the iptables
+         plugin has been added to the distribution, because it is not
+         provided by all distributions and removed from at least one.
+       * powerdns plugin: The new powerdns plugin reads statistics from an
+         authoritative or a recursing PowerDNS name server.
+       * rrdtool plugin: The size of the files generated with the default
+         configuration has been decreased.
+       * tail plugin: The new tail plugin can be used to gather statistics by
+         continuously reading from log files.
+       * teamspeak2 plugin: The new teamspeak2 plugin connects to a
+         TeamSpeak2 server and collects statistics about the number of users
+         and number of channels.
+       * users plugin: Support for the statgrab library has been added.
+       * vmem plugin: The new vmem plugin collects very detailed statistics
+         about the virtual memory subsystem of Linux.
+
+2008-08-30, Version 4.3.4
+       * Build system: Improved detection of and linking with the statgrab
+         library.
+       * collectd: Portability fixes, especially to determine endianess more
+         reliable.
+       * Various plugins: Fix format strings.
+       * disk plugin: A fix for giving disks under Linux 2.4 the right names
+         again has been applied.
+       * memcached plugin: Fix a too short timeout and a related file
+         descriptor leak.
+       * memory plugin: A typo in the libstatgrab code has been fixed.
+       * network plugin: A fix in the initialization function solves problems
+         under Solaris.
+       * nginx plugin: A thread-unsafe function has been replaced.
+       * vserver plugin: A thread-unsafe function has been replaced.
+       * wireless plugin: A work-around for broken wireless drivers has been
+         added.
+
+2008-04-22, Version 4.3.3
+       * build system: Improved detection of several libraries, especially if
+         they are in non-standard paths.
+       * build system: Portability fixes: Automatically define "_REENTRANT"
+         if the libc expects it.
+       * collectd: Error and warning messages have been improved.
+       * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
+         using them.
+       * apache plugin: Allocate new memory when reading a webpage instead of
+         using a buffer of static size.
+       * exec plugin: Close (almost) all filedescriptors before exec(2)ing
+         the program.
+       * hddtemp plugin: Error and warning messages have been improved.
+       * sensors plugin: Fix sensor collection for some chip types.
+
+2008-03-29, Version 4.3.2
+       * collectd: Fix configuration of the `FailureMax', `WarningMax', and
+         `Persist' threshold options.
+       * collectd: Fix handling of missing values in the global value cache.
+       * collectd: Improved error messages when parsing the configuration.
+       * sensors plugin: Fix temperature collection with libsensors4.
+       * unixsock plugin: Fix mixed input and output operation on streams.
+       * wireless plugin: Fix reading noise value.
+
+2008-03-05, Version 4.3.1
+       * exec plugin: Set supplementary group IDs.
+       * network plugin:
+         + Use `memcpy' when constructing/parsing a package to avoid
+           alignment problems on weird architectures, such as Sparc.
+         + Translate doubles to/from the x86 byte representation to ensure
+           cross-platform compatibility.
+       * ping plugin: Correct the handling of the `TTL' setting.
+       * swap plugin: Reapply a patch for Solaris.
+       * tcpconns plugin: Portability improvements.
+
 2008-02-18, Version 4.3.0
        * collectd: Notifications have been added to the daemon. Notifications
          are status messages that may be associated with a data instance.
          physical server. Thanks to Richard Jones from Red Hat's Emerging
          Technology group for this plugin.
 
+2008-04-22, Version 4.2.7
+       * build system: Improved detection of several libraries, especially if
+         they are in non-standard paths.
+       * build system: Portability fixes: Automatically define "_REENTRANT"
+         if the libc expects it.
+       * collectd: Error and warning messages have been improved.
+       * collectd: Check for the BYTE_ORDER and BIG_ENDIAN defines before
+         using them.
+       * apache plugin: Allocate new memory when reading a webpage instead of
+         using a buffer of static size.
+       * exec plugin: Close (almost) all filedescriptors before exec(2)ing
+         the program.
+       * hddtemp plugin: Error and warning messages have been improved.
+       * sensors plugin: Fix sensor collection for some chip types.
+
+2008-03-29, Version 4.2.6
+       * collectd: Improved error messages when parsing the configuration.
+       * sensors plugin: Fix temperature collection with libsensors4.
+       * unixsock plugin: Fix mixed input and output operation on streams.
+       * wireless plugin: Fix reading noise value.
+
+2008-03-04, Version 4.2.5
+       * apache plugin: Improved initialization and error messages.
+       * exec plugin: Set supplementary group IDs.
+       * network plugin:
+         + Create separate threads for reading from the socket and parsing
+           and dispatching incoming packets. Versions prior to this may have
+           problems in high-load situations, where the socket receive buffers
+           overflows, resulting in gaps in the data.
+         + Use `memcpy' when constructing/parsing a package to avoid
+           alignment problems on weird architectures, such as Sparc.
+         + Translate doubles to/from the x86 byte representation to ensure
+           cross-platform compatibility.
+       * ping plugin: Correct the handling of the `TTL' setting.
+       * rrdtool plugin: Ensure correct handling of the `RRATimespan' option.
+       * swap plugin: Reapply a patch for Solaris.
+       * tcpconns plugin: Portability improvements.
+
 2008-01-21, Version 4.2.4
        * unixsock plugin: A bug in the unixsock plugin caused it not to set
          the permission on the socket as documented in the manpage. Thanks to
        * collectd: The documentation has been improved.
 
 2007-12-27, Version 4.1.5
-       * rrdtool plugin: Fix a memory leak that only occured in very-low-
+       * rrdtool plugin: Fix a memory leak that only occurred in very-low-
          memory situations.
        * sensors plugin: Updated the plugin to build and work with version 3
          of the libsensors library.
          the data into text files rather than RRD files.
 
 2006-04-09, Version 3.8.4
-       * Applied patch by Vincent Stehlé which improves the disk-name
+       * Applied patch by Vincent Stehlé which improves the disk-name
          resolution in the `hddtemp' plugin for Linux systems.
 
 2006-04-02, Version 3.8.3
 
 2005-10-16, Version 3.1.0 (Revision 194)
        * Added the `setsid' syscall to the startup code.
-       * Support for hddtemp has been added (thanks to Vincent Stehlé)
+       * Support for hddtemp has been added (thanks to Vincent Stehlé)
 
 2005-09-30, Version 3.0.0 (Revision 184)
        * The ability to send/receive data to/from the network (think