Collectd Versions Save

The system statistics collection daemon. Please send Pull Requests here!

collectd-6.0.0.rc3

2 months ago
  • Daemon: Two new metric types have been added: "up down counters" in integer and floating point variants. Thanks to @octo. #4287
  • OpenTelemetry plugin: This new plugin provides the ability to export as well as receive metrics via OTLP. It supersedes the write_open_telemetry plugin. Thanks to @octo. #4271
  • Write Prometheus plugin: A possible deadlock due to a leaked mutex has been fixed. Thanks to @octo. #4285
  • Write Prometheus plugin: Bugs in the handling of metrics from multiple resources as well as printing of metrics without labels have been fixed. Thanks to @octo. #4284
  • gpu_sysman plugin: Use real collectd metric functions unit tests. Thanks to @eero-t. #4223
  • memory plugin: The system.linux.memory.available metric has been added. Thanks to @octo. #4275
  • swap plugin: The system.paging.faults metric has been added. Thanks to @octo. #4278

collectd-6.0.0.rc2

3 months ago
  • Daemon: The plugin_dispatch_metric_family() function has been changed to handle metric families with zero metrics gracefully. Thanks to @octo. #4257
  • Daemon: The first observed metric value has been added to the metrics cache. Thanks to @octo. #4265
  • Daemon: The new FPCOUNTER (floating point counter) metric type has been added. Thanks to @octo. #4266
  • CPU and Disk plugins: Time metrics have been changed to be per second. Thanks to @octo. #4272
  • format_stackdriver: An error path that could leave the JSON generator in an undefined state has been fixed. Thanks to @octo. #4268
  • write_redis plugin: The plugin has been ported to work with metric_family_t. The schema used has been migrated to make use of RedisTimeSeries instead of a sorted set. Thanks to @octo. #4258

collectd-6.0.0.rc1

3 months ago
  • Fix most -Wpedantic warnings in collectd core. Thanks to @eero-t. #4243
  • df plugin: An out of bounds read, causing segmentation faults, has been fixed. Thanks to @octo. #4252
  • swap plugin: Migration to v6.0. Thanks to @octo. #4190

collectd-6.0.0.rc0

3 months ago

Overview

Version 6.0.0.rc0 is a preview for the collectd 6.0 release. We expect further breaking changes. This release is not production ready.

Read plugins (metric sources)

We expect that the metrics produced by the following plugins are in their final form and will not change before a final 6.0 release. This is not guaranteed however.

  • CPU
  • DF
  • Disk
  • Interface
  • IRQ
  • Load
  • Memory

The collectd 6 wiki page documents how the metrics provided by these plugins have changed since collectd 5.

Compatibility mode

A large number of plugins work in compatibility mode and are disabled by default. These plugins will get breaking updates in future collectd 6 releases.

Plugins in compatibility mode still produce the old data structure, value_list_t, and a heuristic automatically converts this data structure to the new format. Over time we expect that these plugins will be migrated to produce collectd 6 metrics natively, changing the produced metrics. These plugins are not built by default for this reason.

You can use the --enable-compatibility-mode configure flag to build plugins in compatibility mode:

./configure --enable-compatibility-mode

Write plugins (metric sinks)

The following plugins have been updated to work with the new metric schema. We expect no fundamental changes to the schema they produce, but this is not guaranteed at this point in time.

  • Write HTTP, using the following formats:
    • Command
    • OTLP_JSON
    • InfluxDB
    • KairosDB
  • Write InfluxDB UDP
  • Write Prometheus
  • Write Stackdriver

Core

  • Daemon: A special case, mapping "libvirt" to the "virt" plugin, has been removed. Thanks to @octo. #3493
  • Daemon: Resource attributes have been added to the core data structures. Thanks to @octo. #4187
  • Daemon: Support for "absolute" metric values has been removed. Thanks to @octo. #3507
  • Daemon: The legacy value_list_t data structure and supporting functions have been moved into a separate component. Thanks to @octo. #4195
  • Daemon: The new metric_t and metric_family_t data structures hold metrics that are identified by a label set. Thanks to @octo. #3508
  • Daemon: The schema with which metrics are translated from v5 to v6 has been improved. Thanks to @octo. #4197
  • Daemon: The sstrncpy utility function has been improved to handle all inputs gracefully. Thanks to @octo. #4233
  • Daemon: The strbuf utility library has been added. It simplifies building strings iteratively. Thanks to @octo. #3481
  • Daemon: "uc_update: Value too old" errors on metric dispatch have been fixed. Thanks to @hnez. #4103
  • Daemon: Use one write thread per write plugin. Thanks to @hnez. #4026
  • Daemon: All valid UTF-8 strings are now accepted as resource attribute name and metric label name. Thanks to @octo. #4212
  • Daemon: A unit field has been added to the metric family struct. Thanks to @octo. #4194
  • Daemon: Memory corruption in the "label_set_delete" function has been fixed. Thanks to @octo. #4214
  • Daemon: The new "Resource" option allows users to configure resource attributes manually if desired. Thanks to @octo. #4199
  • Build system: Fix some gcc warnings with more strict checks. Thanks to @eero-t. #3970
  • Build system: the --enable-compatibility-mode argument has been added to control whether or not to build plugins using the compatibility mode. Such plugins are considered "unstable" and the metrics reported by these plugins will change in the future. Thanks to @octo. #4236

New plugins

  • GPU Sysman plugin: A new plugin reporting Intel GPU metrics has been added. Thanks to @eero-t. #3968
  • Write OpenTelemetry: A new plugin for exporting metrics using the OpenTelemetry Protocol over gRPC has been added. Thanks to @octo. #4180

Removed plugins

  • Plugin ascent: This plugin has been removed. Thanks to @octo. #3557
  • XMMS plugin: This plugin has been removed. Thanks to @octo. #3556

Plugin changes

  • BuddyInfo plugin: migration to v6.0. Thanks to @manuelluis. #3833
  • Chrony plugin: migration to v6.0. Thanks to @manuelluis. #3830
  • ContextSwitch plugin: migration to v6.0. Thanks to @manuelluis. #3812
  • CPU, DF, Disk, and Memory plugins: Metric names have been updates to conform to OTEP 119. Thanks to @octo. #4181
  • CPU plugin: The metric schema has been aligned with OpenTelemetry semantic conventions. Thanks to @octo. #4216
  • CPUSleep plugin: migration to v6.0. Thanks to @manuelluis. #3818
  • Cpython: fix build with Python 3.11. Thanks to @sgn. #4057
  • DF plugin: migration to v6.0. Thanks to @manuelluis. #3810
  • DF plugin: The metric schema has been aligned with OpenTelemetry semantic conventions. Thanks to @octo. #4218
  • Disk plugin: migration to v6.0. Thanks to @hnez. #4075
  • Disk plugin: The metric schema has been aligned with OpenTelemetry semantic conventions. Thanks to @octo. #4217
  • Entropy plugin: migration to v6.0. Thanks to @manuelluis. #3813
  • Ethstat: ethstat plugin expose ethtool and NIC statistics from sysfs . Thanks to @bkotlowski. #3928
  • Exec plugin: Make PUTMETRIC available as command. Thanks to @hnez. #4074
  • GPU Sysman plugin: Automatically enable the plugin when level-zero is available. Thanks to @eero-t. #4239
  • GPU Sysman plugin: Add fabric port metrics support. Thanks to @eero-t. #4087
  • GPU Sysman plugin: Add more metric output variants and better control for them. Thanks to @eero-t. #4047
  • GPU Sysman plugin: fix initial min memory check value. Thanks to @eero-t. #4134
  • GPU Sysman plugin: fix minimum memory usage calculation. Thanks to @eero-t. #4210
  • GPU Sysman plugin: improve metric variants handling. Thanks to @eero-t. #4173
  • GPU Sysman plugin: Misc improvements. Thanks to @eero-t. #4109
  • InfluxDB plugin: support HTTP endpoint. Thanks to @matwey. #3999
  • Interface plugin: The metric schema has been aligned with OpenTelemetry semantic conventions. Thanks to @octo. #4228
  • Interface plugin: Updated to the v6 API. Thanks to @octo. #3765
  • Ipc plugin: migration to v6.0. Thanks to @manuelluis. #3828
  • IRQ plugin: Migrated to collectd 6 data structures. Thanks to @octo. #4192
  • Load plugin: Migrated to collectd 6 data structures. Thanks to @octo. #4191
  • Lua plugin: migrate the Lua plugin to v6.0. Thanks to @kenhys. #3795
  • Match utility: The printing of a NULL pointer in debug mode has been fixed. Thanks to @sonertari. #3893
  • Memory plugin: bring to feature parity with main branch. Thanks to @hnez. #4076
  • Memory plugin: The metric schema has been aligned with OpenTelemetry semantic conventions. Thanks to @octo. #4219
  • Memory plugin: The plugin has been migrated to metric labels. Thanks to @octo. #3762
  • Memory plugin: The system.memory.limit metric has been added. The "slab" and "available" states have been removed, the "shared" state was added (Linux only). Utilization reporting has been changed to report a ratio (fraction of 1) rather than a percentage. Thanks to @octo. #4224
  • MMC plugin: Port to collectd 6. Thanks to @hnez. #4077
  • Ping plugin: migration to v6.0. Thanks to @manuelluis. #3823
  • Protocols plugin: Initialize metric_family to zero. Thanks to @manuelluis. #3851
  • Protocols plugin: migration to v6.0. Thanks to @manuelluis. #3821
  • Uptime plugin: migration to v6.0. Thanks to @manuelluis. #3807
  • Users plugin: migration to v6.0. Thanks to @manuelluis. #3808
  • Write HTTP plugin: Support for the OpenTelemetry protocol (OTLP) has been added. Thanks to @octo. #4188
  • Write InfluxDB UDP plugin: migration to v6.0. Thanks to @carlospeon. #3763
  • Write Log plugin: extra output lines have been removed to streamline output. Thanks to @octo. #4175
  • Write Log plugin: Remove blank lines from output. Thanks to @octo. #4179
  • Write Prometheus plugin: log which socket creation function failed. Thanks to @eero-t. #4049
  • Write Prometheus plugin: Escaping for metric and label names has been added. Test coverage has been improved. Thanks to @octo. #4206
  • Write Prometheus plugin: migration to v6.0. Thanks to @manuelluis. #3861
  • Write Prometheus plugin: Resource attributes have been integrated into the plugin. "service.name" and "service.instance.id" are exported as "job" and "instance" labels. All other resource attributes are exported once in the target_info metric family. Thanks to @octo. #4213
  • Write Prometheus plugin: Units are appended to metric family names if available. Thanks to @octo. #4220

collectd-5.12.0

3 years ago

collectd: Build fix: duplicate switch case has been removed. Thanks to Sebastian Schmidt. #3536 collectd: Updated specfile for EL8. Thanks to Fabien Wernli. #3346 types.db(5): Documentation of metric definitions has been improved. Thanks to @octo. #3458 collection3: Some small titles has been improved from {type_instance} to {instance}. Thanks to Christian Tacke. #3476 AMQP1 plugin: New options to limit send queue length has been added. Thanks to Ryan McCabe. #3432 AMQP plugin: Updated option to allow multiple hosts to support failover. Thanks to Märt Bakhoff. #3410 capabilities plugin: Conditionalized return type for microhttpd callback functions. Thanks to José M. Guisado. #3512 Ceph plugin: An incorrect close on file descriptor 0 has been fixed. Thanks to @octo. #3459 CPU plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3496 Curl Jolokia plugin: New plugin has been added to integrate jolokia to fetch jmx counters via HTTP/json. Thanks to Wilfried Goesgens. #2470 cURL plugin: Memory leak has been fixed. Thanks to Barbara Kaczorowska. #3547 Disk plugin: Provided an udev rule with ID_SERIAL based attribute so disk and partition data don't get mixed incorrectly in udev-based disk naming. Thanks to Maciej S. Szmigiero. #3441 DPDK Telemetry plugin: Build issues has been fixed. Thanks to Fabrice Fontaine. #3439 Entropy plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3497 InfiniBand plugin: New plugin to collect metrics about IB ports has been added. Thanks to Luke Yeager. #3494 InfiniBand plugin: The build has been fixed by linking with libignorelist. Thanks to Luke Yeager. #3516 Intel PMU plugin: Check for libjevents version has been improved. Thanks to Kamil Wiatrowski. #3407 Intel PMU plugin: The possible crash on plugin init has been fixed. Thanks to Kamil Wiatrowski. #3480 IntelRDT plugin: A build issue of the plugin's unit test has been fixed. Thanks to @octo. #3566 IntelRDT plugin: NaN values in csv output has been fixed. Thanks to Michał Aleksiński, Paweł Tomaszewski. #3503 IRQ plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3498 Mdevents plugin: New plugin to generate notifications about events in RAID arrays. Thanks to Krzysztof Kazimierczak, Maciej Fijałkowskii, Michał Kobyliński. #2841 Memory plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3499 MQTT plugin: A problem with stuck after 20 (qos=1) messages has been fixed. Thanks to Viulian. #2730 MQTT plugin: Resubscribe after a reconnect. Thanks to Maciej S. Szmigiero. #3452 MySQL plugin: Compatibility with MariaDB >=10.5 has been fixed. Thanks to Alexander Meshcheryakov. #3548 MySQL plugin: Reporting of the fields Slave_IO_Running and Slave_SQL_Running has been added. Thanks to Thomas Mieslinger. #3463 Netlink plugin: VFs statistics and link info has been added. Thanks to Kamil Wiatrowski. #3487 Netstat UDP plugin: New plugin ((currently NetBSD-only) to report UDP summary statistics has been aded. Thanks to Håvard Eidnes, Edgar Fuß. #3502 Network plugin: Initialization of sockent_t has been simplified. Thanks to @octo, Dagobert Michelsen. #3543 NFS plugin: NetBSD implementation has been fixed, undefined suppress_warning variable has been removed. Thanks to Edgar Fuß. #3495 OpenVPN plugin: Parsing of empty fields has been fixed. Thanks to @rpv-tomsk. #3425 Processes plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3500 Processes plugin: Size of reading buffer for /proc/stat has been increased. Thanks to Mhumpula. #3479 Python plugin: Error-handling code of PyType_Ready has been added. Thanks to Jia Zhouyang. #3402 Sensors plugin: The documentation has been improved. Thanks to @octo. #3443 Slurm plugin: Compatibility with Slurm versions >= 20.02 has been provided. Thanks to Pablo Llopis. #3518 SMART plugin: SMART plugin has been extended with NVMe device functionality. Thanks to Bartłomiej Kotłowski, Paweł Żak, Sławomir Strehlau. #3510 SNMP Agent plugin: A strncat() truncation warning has been fixed. Thanks to @octo. #3564 SNMP plugin: Count option was added allowing to gather the number of table entries (matching given criteria) rather than their values. Thanks to Edgar Fuß. #3504 Swap plugin: Implementation for NetBSD has been added. Thanks to Håvard Eidnes, Edgar Fuß. #3501 UBI plugin: Data source type has been fixed from counter to gauge. Thanks to Florian Eckert. #3486 Varnish plugin: Added varnish 6 support. Thanks to Charly Koza, Ismael Puerto. #3445 Varnish plugin: Target in category for varnish 6 has been added. Thanks to Charly Koza. #3446 Write HTTP plugin: libcurl default HTTP response has been moved to a buffer instead of stdout. Thanks to Duane Waddle. #3263 Write Prometheus plugin: fix for libmicrohttpd api change. Thanks to Bernd Zeimetz. #3514 Write Sensu plugin: IncludeSource option has been added. Thanks to Märt Bakhoff. #3398 Zookeeper plugin: Missing 3.5 mntr fields has been added. Thanks to Théophane Charbonnier. #3450 Zookeeper plugin: Missing mntr fields has been fixed. Thanks to Théophane Charbonnier. #3449

collectd-5.11.0

4 years ago

New features

  • collectd: A Code of Conduct has been added. Thanks to Florian Forster. #3401
  • text protocol: Support for meta_data in PUTVAL has been added. Thanks to Rafael Marinheiro, Dagobert Michelsen. #3381, #2726
  • utils_cache: Internal API has changed - exposed meta_data_toc function. Thanks to Javier Kohen. #3339
  • filter_chain: Auto load matches and targets if AutoLoadPlugin option is set. Thanks to Manuel Luis Sanmartín Rozada. #1034
  • AMQP plugin: TLS support has been added. Thanks to Märt Bakhoff. #3391
  • Battery plugin: Read from Linux sysfs charge files has been added. Thanks to Nimrod Maclomhair. #3190
  • Buddyinfo plugin: New plugin for memory fragmentation info has been added. Thanks to Asaf Kahlon. #3303
  • capabilities plugin: New plugin to read static platform data has been added. Thanks to Kamil Wiatrowski, Dagobert Michelsen. #3384, #3292
  • DCPMM plugin: New plugin for Intel Optane DC Presistent Memory (DCPMM) has been added. Thanks to Hari TG. #3274
  • DF plugin: LogOnce option has been added. Thanks to themylogin. #2910
  • DPDK Telemetry plugin: New plugin to fetch DPDK metrics (with intent to replace dpdk_stat) has been added. Thanks to Reshma Pattan. #3273
  • Disk plugin: A native (sysctl-based) implementation for NetBSD has been added. Thanks to Edgar Fuß, Dagobert Michelsen. #3379, #3334
  • GPU_Nvidia‏‎ plugin: Configurable plugin instance by GPU name and/or GPU index has been added. Thanks to Robert Dietrich. #3264
  • Intel_PMU plugin: Support for uncore multi pmu has been added. Thanks to Kamil Wiatrowski. #3388
  • Ipstats plugin: New plugin to count incoming, outgoing, forwarded packets on FreeBSD has been added. Thanks to Marco van Tol. #3187
  • Java plugin: Support boolean input has been added. Thanks to Caden. #3044
  • Logparser plugin: New plugin for filtering and parsing log messages has been added. Thanks to Kamil Wiatrowski, Krzysztof Matczak, Marcin Możejko, Adrian Boczkowski, Radosław Jabłonski. #3045
  • Network plugin: New metadata "network:ip_address" has been added. Thanks to Takuro Ashie. #3191
  • NFS plugin: An implementation for NetBSD (using sysctl) has been added. Thanks to Edgar Fuß, Dagobert Michelsen. #3377, #3333
  • NUT plugin: Support for the "output.realpower" value from the ups code has been added. Thanks to Michael Poetters. #2528
  • Redfish plugin: New read plugin to collect out-of-band sensor data from Redfish endpoints has been added. Thanks to Marcin Możejko, Adrian Boczkowski, Michal Kobyliński, Krzysztof Kepka, Man Singh, Zoltan Szabo. #2926
  • Slurm plugin: The new SLURM plugin gathers metrics from the SLURM workload manager has been added. Thanks to Pablo Llopis. #3037
  • Tail_CSV plugin: FieldSeparator option has been added. Thanks to Dheeraj Gupta. #3394
  • UBI plugin: The new "ubifs" plugin reports block state for flash memory devices with UBIFS filesystem has been added. Thanks to Pierre Lebleu. #3204
  • Write_HTTP plugin: Ability to configure cURL statistics has been added. Thanks to Nelson. #3265
  • Write_Influxdb_UDP plugin: New plugin to send values to InfluxDB using line protocol via udp has been added. Thanks to Carlos Peón Costa. #3162
  • Zookeeper plugin: 'quorum' stat has been added. Thanks to Chris Brown. #2991

Bug fixes / Cleanup / Improvements

  • collectd: Missing package in specfile has been fixed. Thanks to Fabien Wernli. #3399
  • collectd: Factored out read_text_file_contents for reading text files and used it to fix a potential unterminated string in the thermal plugin. Thanks to Igor Peshansky. #3359
  • collectd: Error/warning messages has been extended with more information. Thanks to Dagobert Michelsen. #3386
  • collectd: Regression caused by #3217 has been fixed. Thanks to Pavel Rochnyak. #3349
  • build: version-gen.sh has been cleaned up. Thanks to William Pursell. #2635
  • build: Linking with Python 3.8 has been fixed. Thanks to Alexander Meshcheryakov. #3344
  • build: Avoid $< (implied source) in non-inference rules / Building grpc with non-GNU make has been fixed. Thanks to Edgar Fuß, Dagobert Michelsen. #3376, #3330
  • filter_chain: Constant for max plugin name length introduced in #1034 has been fixed. Thanks to Dagobert Michelsen. #3385
  • ignorelist: Coding style has been fixed. Thanks to Dagobert Michelsen. #3397
  • match_regex: Accept all data types of meta data. Thanks to Takuro Ashie. #3231
  • perl unixsock: Made the module robust against socket errors and disconnects. Thanks to Guillem Jover. #3083
  • tree-wide: Race condition when setting thread names has been fixed. Thanks to Michael Kaufmann. #2762
  • types.db: ping_droprate range spec has been fixed. Thanks to Yousong Zhou. #3244
  • utils/format_graphite: Comma sign has been added to the list of prohibited characters. Thanks to Marat Salimzianov. #2998
  • Aggregation plugin: Unreachable clause where both tmp_plugin and tmp_plugin_instance are non-empty has been fixed. Thanks to Ling Huang. #3350
  • AMQP1 plugin: Leaks on error paths has been fixed. Thanks to Ryan McCabe. #3352
  • Apache plugin: BusyWorkers/IdleWorkers update has been fixed. Thanks to Christian W. Zuckschwerdt. #3131
  • CPU plugin, Memory plugin, Swap plugin, UUID plugin: Contain use of sysctl / sysctrlbyname to BSD variants, as deprecated on Linux. Thanks to Zebity Spring. #3342
  • Exec plugin: Select has been replaced with poll to allow more then 1024 open file descriptors. Thanks to Kamil Wiatrowski. #3363
  • GPU_Nvidia plugin: Build issues has been fixed. Thanks to Ruben Kerkhof. #3393
  • Interface plugin: Reorder so that Linux-specific code is actually executed. Thanks to Dagobert Michelsen. #3378
  • NFS plugin: Condition on existence of libkstat has been fixed. Thanks to Dagobert Michelsen. #3382
  • Network plugin: Memory leak has been fixed. Thanks to Ryan McCabe. #3352
  • Processes plugin: Number of running processes has been fixed. Thanks to Bart De Vos. #3243
  • Write_Riemann plugin: Memory leak has been fixed. Thanks to Fabien Wernli. #3351
  • Write_Stackdriver plugin: NaN value handing with gauge metrics has been fixed. Thanks to Jaroslaw Przybylowicz. #3226

5.10.0

4 years ago

New features

  • turbostat plugin: Power metrics update for recent server CPUs. Thanks to Chris MacNamara. #3276
  • ZFS ARC plugin: New cache values are now read on Linux. Thanks to Jan-Philipp Litza. #3247, #2843
  • connectivity plugin: monitor the network interface up/down status via the netlink library. Thanks to Andrew Bays. #2622
  • sysevent plugin: A new plugin that monitors rsyslog for system events. Thanks to Andrew Bays. #2624
  • procevent plugin: A new plugin that monitors process starts/stops via netlink library. Thanks to Andrew Bays. #2623

Bug fixes

  • daemon: Check if plugin actually loaded before reporting configuration issues. Thanks to Pavel Rochnyak. #3217
  • daemon: Recover setlocale() call in src/daemon/collectd.c do_init(). Thanks to Pavel Rochnyak.#3181, #3214
  • Build System: Only include <sys/sysctl.h> when needed. Thanks to Ruben Kerkhof. #3298
  • Build System: Link to libnsl.so if needed for inet_ntop(). Thanks to Dagobert Michelsen. #3291
  • Build System: Remove double "without" added by commit b781871. Thanks to Fabrice Fontaine. #3261
  • Build System: fix compile time issues. Thanks to Matthias Runge. #3179, #3242, #3245
  • Build System: Fix activation of snmp_agent. Thanks to Fabrice Fontaine. #3241
  • Build System: Fix bug that leads to CPPFLAGS gets overridden with CFLAGS when libxmms is enabled. Thanks to Dagobert Michelsen. #3207
  • perl module: Collectd::Plugins::Openvz: Fix indentation of some closing curlies. Thanks to Christian Bartolomäus. #3239
  • tree-wide: Fix a few issues found with LGTM. Thanks to Ruben Kerkhof. #3252
  • tree-wide: fix ssnprintf wrapper. Thanks to Fabien Wernli. #3237,#3232,#3235,#3236
  • tree-wide: Fix make check. Thanks to Ruben Kerkhof. #3306
  • CI System: Travis: switch to Bionic. Thanks to Ruben Kerkhof. #3307
  • CI System: Travis improvements for MacOS. Thanks to Ruben Kerkhof. #3308
  • MySQL plugin: Minor documentation improvements. Thanks to Christian Bartolomäus. #3288
  • Java plugin: Fix typo in an error message. Thanks to Matthias Runge. #3285,#3286
  • sysevent plugin: Add a few missing calloc result checks in the sysevent_init function. Thanks to Andrew Bays. #3282
  • ZFS ARC plugin: A bug that caused the first to values to be skipped was fixed. Thanks to Jan-Philipp Litza. #3246
  • SysLog plugin: restore previous behaviour: fallback to info for unsupported level. Thanks to Fabien Wernli. #3236, #3238
  • virt plugin: Fix memory leak with libvirt MetadataXPath enabled. Thanks to Pavel Rochnyak. #3225,#3228
  • turbostat plugin: Fix warnings generated by the turbostat plugin. Thanks to Ryan Mccabe. #3340
  • GPU NVidia plugin: Fix build of the plugin. Thanks to Ruben Kerkhof. #3320

collectd-5.9.2

4 years ago

Bugfixes:

syslog plugin: Don't fail if syslog loglevel doesn't match. Thanks to Fabien Wernli. #3236 #3238 collectd: Fix ssnprintf wrapper. Thanks to Fabien Wernli. #3237 rdt plugin: Fix compile time issues. Thanks to Matthias Runge. #3245

collectd-5.9.1

4 years ago

Bugfixes / cleanups / refactorings

collectd: redhat spec: fix build due to new upstream plugins. Thanks to Fabien Wernli. #3175 collectd: regex match: Fix unexpected match with empty meta data . Thanks to Takuro Ashie. #3178 collectd: Fix return value or loglevel for several plugins. Thanks to Fabien Wernli. #3182 *collectd: Add standard include early or _FILE_OFFSET_BITS will have definition … . Thanks to Dagobert Michelsen. #3193 collectd: Use GCC-specific flags only when compiling with GCC. Thanks to Dagobert Michelsen. #3195 collectd: Use test_utils_proc_pids only when compiling the plugin that uses it. Thanks to Dagobert Michelsen. #3197 DNS plugin: Do not use headers from glibc. Thanks to Pavel Rochnyak. #3156, #3145 collectd: Add missing definitions for libnetsnmpagent. Thanks to Dagobert Michelsen. #3203 collectd: Move Makefile rules for pid_test inside conditional for code. Thanks to Dagobert Michelsen. #3206 collectd: Recover setlocale() call in src/daemon/collectd.c do_init(). Thanks to Pavel Rochnyak. #3214, #3181 collectd: Add snprintf wrapper for GCC 8.2/3. Thanks to zebity. #3153, #2895, #3038 collectd: Fix bug that leads to CPPFLAGS gets overridden with CFLAGS when libxmms is enabled. Thanks to Dagobert Michelsen. #3207 Write_Riemann plugin: Copy MetaData to Riemann events in write_riemann. Thanks to Romain Tartière. #3158 virt plugin: Fix memory leak with libvirt MetadataXPath enabled. Thanks to Pavel Rochnyak. #3225, #3230

collectd-5.9.0

4 years ago

New features

Build System: configure.ac: option --with-libxml2 has been added. Thanks to Dimitrios Apostolou, @rpv-tomsk. #2864 Build System: configure.ac: run dpdk build tests only if pkgconfig fails. Thanks to Luca Boccassi, @rpv-tomsk. #3015 Build System: The "df" plugin is now built when getmntent_r() is available. Thanks to @octo. #3095 Build System: The ability to turn on collectd "debug" feature in RPMs has been added. Thanks to dehotot. #2755 collectd: A new UNKNOWN state as the initial state of metrics has been added. Thanks to Luis Fernández Álvarez, @octo. #2976 collectd: Base port to Windows. Thanks to Sean Campbell. #2810 collectd: Code ownership of five plugins has been handed out to folks from Intel. Thanks to @octo. #3053 collectd: config parser: Improved error reporting on global options. Thanks to @rpv-tomsk. #2813 collectd: daemon: make plugin_dispatch_multivalue() obey write queue limits. Thanks to Adam Romanek. #2898 collectd: Macros STRERROR and STRERRNO have been added. Thanks to @octo. #2519 collectd: Plugin name field has been added to plugin context to improve error reporting. Thanks to @rpv-tomsk. #2821 collectd-tg: Use CLOCK_REALTIME for collectd-tg times. Thanks to Andrew Bays. #2837 tree-wide: Don't initialize static pointers to NULL, use bool from stdbool.h (instead of _Bool). Thanks to @rubenk. #2771, #2772 tree-wide: Replace zu with PRIsz and llu with PRIu64. Thanks to Sean Campbell. #2512 tree-wide: Use interval value from plugin context, do not set vl->interval in plugins more. Thanks to @rpv-tomsk. #2847 tree-wide: Utilities and libraries have been moved to src/utils/. Thanks to @octo. #2961 AMPQ1 plugin: A new plugin to write to amqp1 protocol. Thanks to Andy Smith. #2618 Chrony plugin: Ignoring late responses has been added. Thanks to Miroslav Lichvar, @rpv-tomsk. #2896 CPUFreq plugin: Read number of p-state transitions and time spent in each p-state. Thanks to Sexton Rory. #2803 cURL, cURL-XML plugins: Option Interval has been added. Thanks to @rpv-tomsk. #2847 Disk plugin: Report number of in progress disk IO requests on FreeBSD. Thanks to Nathan Huff. #2878 Exec plugin: Dynamic allocation of grname buffer has been added. Thanks to sreedi, @octo. #2937 GPU NVML plugin: New plugin to collect NVIDIA GPU stats. Thanks to Evgeny Naumov. #2923 gRPC plugin: The VerifyPeer option for servers has been added. Thanks to @octo. #2593 Intel RDT plugin: Support for groups of PIDs has been added. Thanks to Wojciech Andralojc, Mateusz Starzyk, Michal Aleksinski. #2891 IPMI plugin: Config options SELSensor and SELIgnoreSelected have been added. Thanks to Mariusz Szafranski. #2796 Modbus plugin: Support for 64 bit vals has been added, support for CDAB endian 32-bit modbus polls has been added. Thanks to Anthony Vickers, PJ Bostley. #2670, #2660 Modbus plugin: The Scale and Shift metrics have been added. Thanks to cekstam. #2729 Netlink plugin: Handle new counter from Linux kernel version 4.6+. Thanks to @rpv-tomsk. #2767 Network plugin: Option BindAddress has been added. Thanks to Ofir Hermesh. #2831 Ping plugin: An AddressFamily configuration option has been added. Thanks to 依云 lilydjwg. #2961 OVS Stats plugin: Extended metrics ovs-dpdk have been added. Thanks to Matteo Croce, Ryan McCabe. #3000 OVS Stats plugin: Support of bond interface and a InterfaceStats config option have been added. Thanks to Andrew Bays. #2880 PCIe Errors plugin: New plugin to read PCIe errors. Thanks to Kamil Wiatrowski. #2733 Processes plugin: Support for Linux Delay Accounting has been added. Thanks to @octo. #2598 Redis plugin: Keyspace hitratio metric has been added, metric operations_per_second has been removed, an option for connecting via UNIX socket has been added. Thanks to @rpv-tomsk. #2838, #2845, #2904 RouterOS plugin: Support for temperature and voltage data has been added, use MAC-address when Radio-name is missing. Thanks to @rpv-tomsk. #2851, #2854 RRDCacheD plugin: Time resolution has been improved to microseconds. Thanks to Brian T. O'Neill. #3065 Sensors plugin: Checks for upper limit of SENSORS_API_VERSION have been removed, support for libsensors older than 3.0.0 has been dropped. Thanks to @rpv-tomsk. #3013, #3014 SNMP plugin: New options PluginInstance, TypeInstance, TypeInstanceOID, PluginInstanceOID, FilterOID, FilterValues and FilterIgnoreSelected have been added. Thanks to @rpv-tomsk. #2817, #2819 SNMP Agent plugin: Multiple key indexes to snmp table and other new features have been added, refactoring, coverity scan issues have been fixed. Thanks to Marcin Mozejko. #2702, #2844 Swap plugin: Support for Linux 2.4 has been dropped. Thanks to @rpv-tomsk. #2979 Turbostat plugin: Configuration option RestoreAffinityPolicy has been added. Thanks to Pablo Llopis. #2627 Turbostat plugin: New metrics P-states, Turboboost, Platform TDP, Uncore bus ratio have been added. Thanks to Sexton Rory. #2806 Turbostat plugin: Support of reporting GPU power on SKL has been added. Thanks to Gordon Kelly. #2605 virt plugin: Allow read Hostname from libvirt metadata. Thanks to Mehdi ABAAKOUK. #2807 virt plugin: Block info statistics for disk devices have been added. Thanks to Radoslaw Jablonski. #2874 Wireless plugin: A bitrate metric has been added. Thanks to @octo. #2950 Write Graphite, Write Kafka plugins: Support for Graphite 1.1+ tag has been added. Thanks to: Dan Cech. #2631 Write Prometheus plugin: Option Host has been added. Thanks to @rpv-tomsk. #2969 Write Stackdriver plugin: New plugin to write to Google Stackdriver Monitoring. Thanks to @octo. #2472 Write Syslog plugin: "write_syslog" plugin writes values lists as syslog messages. Thanks to Shirly Radco. #3019

Bugfixes / cleanups / refactorings

Build System: A warning that pkgdatadir and pkglibdir were previously defined has been fixed, additional plugins have been enabled, GNULIB_DIR has been added to LDFLAGS in configure.ac on Windows. Thanks to S ean Campbell. #2907, #2885, #2882 Build System: Including utils/mount/mount.h has been fixed. Thanks to @octo. #3097 Build System: The amount of output from ./configure has been reduced, rendering of collectd-lua(5) manpage has been fixed, don't hide errors when creating manpage. Thanks to @rubenk. #3086, #3088, #3092 collectd: A bug in c_avl_iterator_prev has been fixed. Thanks to volth. #2917 collectd: A stringop compiler warning has been fixed. Thanks to @rubenk, Juan Osorio Robles. #3021 collectd: An invalid memory access in the strjoin() function has been fixed. Thanks to @octo. #3063 collectd: collectd binary has been refactored. Thanks to Sean Campbell, Sebastian Harl. #2745 collectd: collectdmon cannot exit command line options parse loop has been fixed. Thanks to takahashi-tsc. #2774 collectd: Endianness checks for AIX have been added, gcc issue on Mac byteorder has been fixed, fallback for endianness conversion has been added. Thanks to Dagobert Michelsen. #2761, #2741, #2717 collectd: Handle failure of simple config callbacks. Thanks to @rubenk. #3085 collectd: Include kstat.h if available to provide kstat_ctl_t, include kstat.h when available. Thanks to Dagobert Michelsen. #2716, #2711 collectd: Parsing option for avoiding making BaseDir has been fixed. Thanks to Mariusz Białończyk. #2856 collectd: Remove empty cmd_listval_t data structure and related no-op code. Thanks to @rpv-tomsk. #2779 collectd: src/daemon/plugin.c: Refactor plugin_load_file(), src/utils_format_json.c: Remove chatty debug messages. Thanks to @octo. #2558, #2938 collectd: Stop poisoning function in debug mode. Thanks to @rubenk. #2804 collectd: The number of allocations when parsing types.db has been reduced. Thanks to @rubenk. #3091 collectd: The organization of the source repository has been improved. Thanks to @octo. #2961 collectd: Typos have been fixed. Thanks to @octo, Jakub Jankowski, William Pursell. #2944, #2692, #2643 tree-wide: cleanup: cf_util_get* instead of local copy in plugins, prefixed error reporting. Thanks to @rpv-tomsk. #2833 tree-wide: Some style issues have been fixed. Thanks to @rubenk. #3022 tree-wide: sstrerror() has been replaced with STRERRNO. Thanks to @rpv-tomsk. #2735 AMQP1 plugin: Potential memory leaks found via scan-build have been fixed, a typo in error log message has been fixed, cleanups. Thanks to Andy Smith, Andrew Bays, @rubenk. #2802, #2876, #2797 Barometer plugin: Support to libi2c-4.0 has been added. Thanks to @rpv-tomsk. #2783 DBI, Oracle, PostgreSQL plugins: Fixes and improvements. Thanks to @rpv-tomsk. #1705 Disk plugin: HAVE_UDEV_H has been changed to HAVE_LIBUDEV_H. Thanks to Dylan Stephano-Shachter. #2668 Disk plugin: In linux, reset the disk when it disappears from /proc/diskstats. Thanks to Nikita Kozlov, @rpv-tomsk. #2551 DPDK Events, DPDK Stats plugins: Buffer size for parsing lcores has been increased, a deprecation warning has been fixed, runtime config file path has been fixed. Thanks to Kevin Laatz. #2722, #2840, #2924 DPDK Stats plugin: A compilation issue has been fixed. Thanks to Volodymyr Mytnyk. #2524 GPS plugin: Build with gpsd version 3.18 has been fixed. Thanks to Baruch Siach. #2947 Intel RDT plugin: Compiler warnings have been fixed. Thanks to @rubenk. #3104 Log Logstash plugin: Non-portable struct initialization with {} has been fixed. Thanks to @octo. #2988 LUA plugin: A memory leak has been fixed. Thanks to @rubenk. #3090 MySQL plugin: Properly cleanup dropped MySQL connections. Thanks to Dhrupad Bhardwaj. #2704 Netlink plugin: Truncation warnings have been fixed. Thanks to @rubenk. #2777 NFS plugin: Message Unexpected number of fields for NFSv4 server statistics: 62 has been fixed. Thanks to Yedidyah Bar David. #2076 NFS plugin: Number of fields for NFSv4 has been fixed. Thanks to Jan-Philipp Litza. #2915 Notify Email plugin: All notification parameters have been included into email. Thanks to @rpv-tomsk. #2834 NTPd plugin: Don't treat normal peers as refclocks, skip 0.0.0.0 hosts in ntpd plugin. Thanks to @rpv-tomsk, Ivan Kurnosov. #2822, #2376 OAuth plugin: src/utils_oauth.c: Renew OAuth tokens 30 seconds before they expire. Thanks to @octo. #2970 OVS Stats plugin: A macro to populate counters list has been added, value of OpenFlow has been corrected. Thanks to Matteo Croce. #2966, #2963 OVS Stats plugin: Code style, cleanup and improvements. Thanks to @rpv-tomsk. #3011, #3012 OVS Stats, OVS Events plugins: utils_ovs: Avoid potential access of freed memory, fixes. Thanks to Ciara Loftus, Mark Kavanagh. #2801, #2731 Processes plugin: Compilation has been fixed when ps_delay() is not used. Thanks to @rpv-tomsk. #2610 Python plugin: A compilation warning with Python 3.7 has been fixed. Thanks to Manoj Srivastava. #3042 Redis plugin: Bugfixes, extended error reporting, persistent connections and parallel polling, ability to select db for queries has been fixed. Thanks to @rpv-tomsk, skob. #2826, #2789 Router OS plugin: Unset radio-name showing up as "(null)" has been fixed. Thanks to melak. #2740 RRDCacheD plugin: Cleanup rrdcached plugin a bit. Thanks to @rpv-tomsk. #3080 RRDTool plugin: Error reporting has been extended. Thanks to @rpv-tomsk. #2825 Sensors plugin: Support for humidity sensors has been added. Thanks to Sarah Fischmann. #2913 Sensu, OVS Stat, Turbostat, virt, OAuth, Write Prometheus, Intel RDT plugins: Compiler warnings have been fixed. Thanks to @rubenk. #3093, #3098, #3099, #3100, #3102, #3103, #3104 virt plugin: Code do {} while(0) around macro has been removed. Thanks to @octo. #2579 virt plugin: Compiler warnings, a segfault in libvirt, typo in error messages have been fixed. Thanks to Antoine Naud, @rubenk, sarah niuxu18. #2808, #2919, #2957 virt plugin: Optional virDomainGetCPUStats() has been removed from main flow, cleanup. Thanks to @rpv-tomsk. #2972, #2978 virt plugin: Tracking of VM state changes has been fixed. Thanks to Radoslaw Jablonski. #2701 Write MongoDB plugin: Plugin dependencies have been fixed. Thanks to @rpv-tomsk. #3010 Write Prometheus plugin: A compilation issue on Mac OS X has been fixed. Thanks to @octo. #3059 Write Redis plugin: Bug "max_set_duration deletes unexpected data" has been fixed. Thanks to takahashi-tsc. #2773 Write Stackdriver plugin: Potential NULL dereference and error reporting have been fixed. Thanks to @octo. #2960

Documentation

collectd.conf(5): a typo has been fixed, the tail plugin's documentation has been improved. Thanks to @rubenk, @octo. #3087, #2994 collectd.conf(5): virt: Instances option has been documented, a clarifying example has been added. Thanks to @rpv-tomsk, Fabien Wernli. #2990, #2903 collectd-python: Import configuration option has been documented. Thanks to Tyler Harper. #2985 collectd-snmp.pod: Document thread usage correctly. Thanks to Nathan Ward. #3078 CONTRIBUTING.md: Improve wording around ChangeLog; fix example, document the new change log requirement / behavior. Thanks to @octo. #3061, #3054 docs/review_comments.md: document with frequent review comments has been started. Thanks to @octo. #2964 README: Include compiler defenses suggestion, do not point users to non-existing file. Thanks to Kevin Laatz, @rubenk. #2721, #2045