Temporarily disable the processes plugin for NetBSD, until the patch
is rewritten to build again.
Upstream changes since 5.7.2:
- collectd: The core daemon is now completely licensed under the MIT
license.
- collectd: Added daemon option to avoid making BaseDir.
- collectd: Global variables have been moved to their own module to
make porting collectd easier.
- collectd as well as Apache, memcached, OpenLDAP, Perl, RouterOS,
SNMP, Tail-CSV plugins: Free userdata for
"plugin_register_complex_read()".
- Collectd client library: Added parsing and server code.
- Build system: Dependency on libltdl has been removed, support for
libtool 1 has been dropped.
- Build system: The build system has been switched to non-recursive
make.
- APC UPS plugin: The plugin's configuration is now optional. Without
a "<Plugin />" block reasonable defaults will be used.
- Chrony plugin: Several issues found when working with a stratum-1
server have been fixed.
- Ceph plugin: Support for the Ceph version "Luminous" has been added.
- CPU plugin : Linux-specific "guest" states have been added.
- cURL plugin, cURL-JSON, cURL-XML, DBI, FileCount, memcachec, Oracle,
PostgreSQL, Table, Tail, Tail CSV plugins: The ability to configure
the "plugin" field of generated metrics has been added.
- cURL-JSON plugin: Parsing of arrays has been fixed.
- DPDKEvents plugin: This new plugin reports link status and keep
alive events.
- DPDKStat plugin: The plugin has been refactored to make DPDK related
utility functions reusable.
- DPDKStat plugin: The "LogLevel" and "RteDriverLibPath" config
options have been added.
- Email plugin as well as Exec and Unixsock plugins: Use
"_SC_GETPW_R_SIZE_MAX".
- FileCount plugin: Custom values for reported plugin, type and type
instance.
- GenericJMX plugin: Support for "AtomicInteger" and "AtomicLong" has
been added.
- gRPC plugin: Support for meta data has been added.
- IPC plugin: Fixed failed compilation on AIX.
- Intel PMU plugin: This new plugin collects CPU performance metrics
using Intel's Performance Monitoring Unit (PMU). Scaling information
added to metadata.
- Intel RDT plugin: Support for collectd's logging infrastructure has
been added. PQoS monitoring groups are being reset on start-up to
fix potential previous unclean shutdowns.
- IPMI plugin: Support for System Event Log (SEL) has been added.
- IPMI plugin: Support for remote IPMI controllers has been added.
- LVM plugin: A check for the "CAP_SYS_ADMIN" capability has been
added. This will give users an informative warning when the process
is not running with the required privileges for this plugin.
- mcelog plugin: This new plugin subscribes to Machine Check
Exceptions (MCE) and dispatches notifications. Metadata reset.
- MQTT plugin: Add support for TLS in "Subscriber" blocks.
- memcached plugin: Persistent connections have been implemented. Fix
hit ratio reporting, add connections rate report.
- memcached plugin: The type of the "listen_disabled" metric has been
changed to "total_events".
- Netlink plugin: The dropped packets metric has been added.
- NFS plugin: Support for NFS 4.2 metrics has been added.
- NFS plugin: Config options to ignore specified NFS versions have
been added.
- NUT plugin: The "ConnectTimeout", "ForceSSL", "VerifyPeer" and
"CAPath" options have been added.
- OpenLDAP plugin: A segfault after a connection failure has been
fixed.
- Openvpn plugin: Added support for status files from latest
OpenVPN-2.4 and possible from future versions.
- OVS Events plugin: This new plugin reports link state changes from
Open vSwitch (OVS).
- OVS Stats plugin: This new plugin reports bridge / interface
statistics from Open vSwitch (OVS).
- Perl plugin: Bugfix, added check of proper interpreter
initialization.
- PostgreSQL plugin: The plugin now sets the "application_name"
parameter when connecting to the database.
- Processes plugin: The I/O operations reported for selected processes
has been fixed. The metric "ps_disk_octets" has been renamed to
"io_octets" because it actually contains the number of I/O operation
by the process, not just disk related I/O. Same for "io_ops"
(previously "ps_disk_ops"). The new metric "disk_octets" has been
added and is reporting disk I/O only. Add option to collect the count
of active memory maps for Linux processes. The "CollectFileDescriptor"
and "CollectContextSwitch" options have been added.
- Processes and TCPConns plugins: The OpenBSD implementation has been
changed to use "kvm_openfiles" with "KVM_NO_FILES".
- Python plugin: Extend Notification class to include metadata.
- Python plugin: The "CollectdException" class has been added. This
allows to throw an exception without a stack trace being logged.
- Sensors plugin: Support for (electrical) current has been added.
- SNMP plugin: Error handling has been improved: a potential
double-free is now avoided (potentially leaking memory) and handling
of non-failing subtrees has been fixed.
- SNMP plugin: The "Timeout" and "Retries" config options have been
added.
- SNMP Agent plugin: This new plugin implements an SNMP AgentX
subagent that receives and handles queries from SNMP master agent
and returns configured metrics.
- Synproxy plugin: This new plugin provides statistics for Linux
SYNPROXY.
- Tail plugin: Allow the calculation of several distributions in one
"tail" instance through a "bucket" type.
- Turbostat plugin: Import "msr-index.h" header from Linux and better
support for mutliple packages.
- Uptime plugin: Changed implementation to read from "/proc/uptime"
instead of "/proc/stat". Update for Linux and AIX, uptime is read
directly using a system call. Update for BSD and Solaris, uptime is
calculated by subtracting boot time from current time.
- UUID plugin: Support for libhal has been removed.
- Varnish plugin: Extended the varnish plugin with varnish-plus
counters. Fixed invalid data source type.
- virt plugin: The plugin has been updated to use
"virConnectListAllDomains()".
- virt plugin: Support for domain tags has been added.
- virt plugin: Connection handling has been improved.
- virt plugin: Many metrics have been added, including disk,
hypervisor CPU usage, performance monitoring events, domain state,
CPU pinning (affinity), file system, and job statistics.
- Write Graphite plugin: Additional tests have been added.
- Write HTTP plugin: The "Attribute" and "TTL" options for the
KairosDB format have been added. Implementation of "Prefix" option.
- Write MongoDB plugin: Memory leaks have been fixed.
- Write Prometheus plugin: Label values are now properly escaped.
- Write Redis plugin: Add "max_set_duration" to set duration for
value.
- Write Riemann plugin: Export times with microsecond resolution.
- Write TSDB plugin: The options "ResolveInterval" and "ResolveJitter"
have been added to control DNS lookup behavior. This prevents DNS
flooding in case TSDB is not available.
- ZFS ARC plugin: Header lines are now ignored in the Linux
implementation.
- Build system: The Notify Email plugin is no longer linked with
indirect dependencies.
- collectd: A race condition when calculating a metric's rate has been
fixed.
- AMQP, Exec, UnixSock, Write Kafka plugins: Parsing of the PUTVAL
command with multiple values has been fixed.
- AMQP plugin: The "ExchangeType" option is now also valid for
publishers.
- BIND plugin: Fix parsing of the sample time provided by BIND.
Previously, the time was assumed to be in the local timezone when in
fact it was in UTC.
- BIND plugin: Memory leaks have been fixed.
- cURL-JSON plugin: Handling of arrays has been fixed.
- DPDKStat plugin: Error handling during initialization has been
improved.
- DPDKStat plugin: Handling of a number of metrics has been improved,
for example "rx_q0bytes".
- Intel RDT plugin: Configuration handling has been changed to be more
graceful.
- Log Logstash plugin: If writing the log entry fails, print it to
"STDERR" instead.
- LogFile plugin: If writing to the file fails, print log messages on
"STDERR" instead.
- memcachec, Tail plugins: A resource leak in the matching
infrastructure has been fixed.
- MQTT plugin: Invalid symbols in topic names are now replaced and a
resource leak has been fixed.
- Network plugin: A potential endless-loop has been fixed. This can be
triggered remotely by sending a signed network packet to a server
which is not set up to check signatures.
- Perl plugin: A potential double-free has been fixed.
- Processes plugin: A compilation error on AIX has been fixed.
- SMART plugin: A check for the "CAP_SYS_RAWIO" capability has been
added.
- Write Graphite plugin: Error handling in the case that calculating a
metric's rate fails has been improved. Previously, the raw counter
values were sent to Graphite.
- Write Prometheus plugin: An incorrect use of "realloc(3)" has been
fixed.
- Simplify patching somewhat by calling automake
- Temporarily disable the processes plugin patch for NetBSD, until
its code is amended for collectd code changes.
Version 5.6.1
- Build system: Unnecessary linking of the Write Graphite plugin
with libyajl has been removed.
- collectd: A bug in the FlushInterval option that caused a
segmentation fault in the Write HTTP plugin has been fixed.
- Apache plugin: A syntax error has been fixed.
- cURL-JSON plugin: A segmentation fault that occurred when
handling JSON with unexpected structure has been fixed.
- PostgreSQL plugin: Handling of NULL values in the query_plans
and query_plans_by_table queries has been fixed.
- RRDCacheD plugin: Reconnection behavior has been added.
- VServer plugin: Use of a deprecated API (readdir_r()) has been
fixed.
- Write Graphite plugin: Make default values configurable at
compile time again.
- Write HTTP plugin: A bug has been fixed that lead to flush
callbacks being registered twice.
Version 5.6.0
- Build system: An option to to avoid building the DF plugin
against XFS has been added.
- Build system: Autoconf >=2.60, a C99-capable compiler and
pkg-config are now required.
- Build system: Building with -Werror is now optional.
- Build system: Many compilation issues on non-Linux platforms
have been fixed, leading to wider plugin support.
- Build system: The configuration summary now also ends up in
config.log.
- collectd: All command-line options now override global options
from the config file.
- collectd: A number of unit tests for commonly used functions
have been added.
- collectd: Plugins start up and read timeouts are now logged.
- collectd: Support for a timeout has been added to FLUSH
callbacks.
- collectd: The -T command line switch now reports more errors.
- collectd: The max size of value list elements
(DATA_MAX_NAME_LEN) has been doubled and is now configurable at
build time.
- Set target: The MetaData option has been added.
- AMQP plugin, Write_HTTP plugin, Write_Kafka plugin: Support for
libyajl < 2 has been added.
- APC UPS plugin: Parsing of end markers has been fixed.
- APC UPS plugin: The PersistentConnection option has been added.
- ceph plugin, DNS plugin, Exec plugin, IPTables plugin, Ping
plugin, turbostat plugin: When running unprivileged, these
plugins will now warn about insuffiscient permissions or
capabilities(7).
- Chrony plugin: This new plugin collects NTP data from the chrony
NTP server.
- cpusleep plugin: This new plugin measures time spent by CPU in
deep sleep mode.
- CPU plugin: The ReportNumCpu option has been added.
- cURL plugin, cURL-JSON plugin, cURL-XML plugin: The new
Statistics reports various per-HTTP connection timers.
- DBI plugin: The Interval option has been added to Database
blocks.
- Disk plugin: Support for FreeBSD has been added.
- Empty Counter match: Support for derives has been implemented.
- GenericJMX plugin: Support for TabularData and the PluginName
option have been added.
- GPS plugin: This new plugin reports the number of sattelites
seen by and precision of a GPS receiver.
- gRPC plugin: This new client and server plugin allows sending
and receiving metrics using the gRPC protocol. Comparable to the
UnixSock plugin, but using TCP and TLS.
- Interface plugin: Reporting dropped packets has been added.
- Interface plugin: The ReportInactive has been added, letting
users skip inactive network interfaces.
- Interface plugin: The new, Solaris-only UniqueName option has
been added.
- Lua plugin: This new language binding allows writing plugins
using the Lua programming language.
- Memory plugin: Reporting of ARC memory on Solaris has been
added.
- MQTT plugin: This new plugin sends metrics to and/or receives
metrics from an MQTT broker.
- MySQL plugin: Connection to the database server can now be done
over SSL.
- MySQL plugin: Monitoring slow queries has been added.
- MySQL plugin: mysql_bpool_pages-flushed has been renamed to
mysql_bpool_counters-pages_flushed because the value is
cumulative.
- MySQL plugin: Support for Galera statistics has been added.
- MySQL plugin: Support for InnoDB metrics was improved.
- MySQL plugin: The mysql_sort type has been split into 3
different types.
- Network plugin: Decryption error logging has been improved.
- Notify Nagios plugin: This new plugin sends notifications to
Nagios as a passive check result.
- NTPd plugin: The plugin now detects if the ntp daemon reports
nanoseconds instead of microseconds.
- OpenLDAP plugin: Several connection-related improvements have
been made.
- OpenLDAP plugin: Support for "simple authentication" has been
added.
- Ping plugin: The Size option has been added, allowing the ICMP
data payload size to be configured.
- PostgreSQL plugin, DBI plugin, Oracle plugin: The new
PluginInstanceFrom option has been added.
- PowerDNS plugin: The recursor metrics have been updated to 3.7.3
and missing rr types have been added.
- Processes plugin: Counting of context switches was added for
Linux.
- Processes plugin: Improve reliability of thread counts on Linux.
- Python plugin: Minimal Python version requirement has been
bumped to 2.6.
- Redis plugin: Several additional metrics are now collected.
- Sensors plugin: The UseLabels option has been added.
- SMART plugin: The new IgnoreSleepMode option has been added.
- SMART plugin: The new UseSerial option allows identifying
devices in a stable way.
- SNMP plugin: The IpAddress can now be used for instances.
- StatsD plugin: Latency calculation histogram is now able to
shrink automatically to optimal size.
- StatsD plugin: The CounterSum option has been added.
- UUID plugin: The plugin now also looks in in smbios system table
and /sys/class/dmi.
- virt plugin: The PluginInstanceFormat option has been added.
- Write Graphite plugin: The ReconnectInterval option has been
added.
- Write HTTP plugin: A KairosDB formatter has been added.
- Write HTTP plugin: Notifications are now handled by this plugin.
- Write HTTP plugin: The LogHttpError option has been added.
- Write HTTP plugin: The new Headers option allows setting custom
HTTP headers in outgoing requests.
- Write Kafka plugin: Key handling has been made more
comprehensive and reliable.
- Write Redis plugin: The Database, MaxSetSize, Prefix and
StoreRates options have been added.
- Write Riemann plugin: The new BatchFlushTimeout and Timeout
option have been added.
- Write Riemann plugin: This plugin now requires the
riemann-c-client library, version 1.6.0+. This adds support for
submitting values to Riemann over TLS.
- Write TSDB plugin, Write Sensu plugin, Write Riemann plugin,
Write Graphite plugin, Write TSDB plugin: TCP keepalive is now
enabled, helping graceful recovery from unclean network
disconnections.
- XenCPU plugin: This new plugin collects XEN Hypervisor CPU
stats.
- ZFS ARC plugin: Several new statistics have been added and a
couple of obsolete ones removed.
- Zone plugin: This new plugin reads per-zone CPU usage on
Solaris.
Version 5.5.2
- collectd: A division by zero has been fixed in the
plugin_dispatch_multivalue() function.
- collectd: The address of the Free Software Foundation has been
fixed in GPL license headers.
- Build system: Detection and handling of librrd 1.6 and later has
been fixed.
- Apache plugin: A warning about a possible misconfiguration has
been added.
- cURL, cURL-JSON and cURL-XML plugins: A memory leak when
allocating more memory fails has been fixed.
- DF plugin: A build issue on DragonFlyBSD has been fixed.
- Ethstat plugin: Code to strip leading whitespace from device
names. This works around an issue in the VMXNet3 driver.
- Exec plugin: A problem in the error handling of an fdopen()
failure has been fixed.
- Modbus plugin: The debug output has been disabled by default. It
is now only enabled when building with --enable-debug.
- Network plugin: A check for the initialization of secure memory
has been added. Previously, failure to initialize this memory
was ignored.
- Network plugin: A heap overflow has been fixed in the server
code. This issue can be triggered remotely and is potentially
exploitable.
- Perl plugin: Init callbacks have been changed to run essentially
single-threaded to avoid race conditions by init functions which
create additional threads.
- Processes plugin: A compilation error on systems without regex.h
has been fixed.
- Processes plugin: A memory leak on Solaris has been fixed.
- Processes plugin: A warning about too long process names has
been added.
- Redis plugin: A memory leak in an error handling code path has
been fixed.
- Redis plugin: The data source type of the expired_keys metric
has been corrected to DERIVE.
- SMART plugin: A build dependency on libudev has been added.
- StatsD plugin: A deadlock on plugin shutdown has been fixed.
- Write HTTP plugin: Freeing of memory holding HTTP headers during
shutdown has been fixed.
- Write Sensu plugin: A segfault when the Tag was unset has been
fixed.
- ZFS ARC plugin: The cache_operation-stolen metric has been
removed for FreeBSD 10.2 and later.