libcollectdclient/network_parse.c: Ensure memory allocated in parse_values() is always freed.
Shoutout to scan-build for finding this one!
Shoutout to scan-build for finding this one!
Merge remote-tracking branch 'github/pr/2091'
ipmi: Run code through clang-format
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
ipmi: Addressed review comments
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
Signed-off-by: Mytnyk, Volodymyr <volodymyrx.mytnyk@intel.com>
Merge branch 'collectd-5.7'
Merge branch 'collectd-5.6' into collectd-5.7
Bump version to 5.6.3; Update ChangeLog.
Merge remote-tracking branch 'github/pr/2466' into collectd-5.7
write_prometheus plugin: Don't construct struct sockaddr_in6 manually.
On FreeBSD, the struct is an incomplete type.
On FreeBSD, the struct is an incomplete type.
write_prometheus plugin: Add support for libmicrohttpd < 0.9.0.
0.9.0 was released in July 2010, yet Precise, which we're still building for,
ships 0.4.6. *sigh*
0.9.0 was released in July 2010, yet Precise, which we're still building for,
ships 0.4.6. *sigh*
write_prometheus plugin: Fall back to IPv4 socket if IPv6 fails.
Unfortunately, for libmicrohttpd "dual stack" means "enforce IPv6 (but
allow IPv4, too)". That means that on systems without IPv6,
libmicrohttpd'd initialization fails (when the dual stack flag is set).
To work around this limitation we open the socket ourselves and pass it
to libmicrohttpd to use.
Fixes: #2149
Unfortunately, for libmicrohttpd "dual stack" means "enforce IPv6 (but
allow IPv4, too)". That means that on systems without IPv6,
libmicrohttpd'd initialization fails (when the dual stack flag is set).
To work around this limitation we open the socket ourselves and pass it
to libmicrohttpd to use.
Fixes: #2149
ceph plugin: Fix comment typo.
Merge remote-tracking branch 'github/pr/1558'
curl_xml: Use of xmlFree() for values returned by xmlNodeGetContent()
curl_xml: Fixed issues found by review
varnish plugin: Metrics with invalid data source type. #2462
curl_xml: Updated documentation and default configuration
curl_xml: Code cleanup and fixes
* XPath list creation moved from cx_config_add_xpath() to cx_config_add_url()
* Added missing check for ValuesFrom option presence
* Added missing check for strdup() result
* Removed excessive check for option name in cx_config_add_url()
* XPath list creation moved from cx_config_add_xpath() to cx_config_add_url()
* Added missing check for ValuesFrom option presence
* Added missing check for strdup() result
* Removed excessive check for option name in cx_config_add_url()
collectd.spec: bzip2 is the default
curl_xml: Removed excessive operation
curl_xml: Refactored via cx_get_text_node_value()
curl_xml: Code cleanup, clang-format
curl_xml: Renamed 'PluginName' option to unified 'Plugin'.
curl_xml: Changed documentation to match proposed changes.
curl_xml: Add ability to set plugin instance from XML data.
curl_xml: Add ability to set custom plugin name in collected data.
Merge branch 'pr/2454'
processes plugin: Format with clang-format.
Also a small manpage formatting tweak.
Also a small manpage formatting tweak.
Merge branch 'collectd-5.7'
Merge branch 'collectd-5.6' into collectd-5.7
use existing type to publish the data
there no such command in make make-dist-bz2
collectd.conf(5): Move towards unifying "string literals".
Merge remote-tracking branch 'github/pr/1707'
dbi plugin: Fix additional memory leaks.
dbi plugin: Fix memory leak.
Some memory was leaked when shutting down.
This is a partial back-port of 5ee365a.
Signed-off-by: Florian Forster <octo@collectd.org>
Some memory was leaked when shutting down.
This is a partial back-port of 5ee365a.
Signed-off-by: Florian Forster <octo@collectd.org>
collectd.conf(5): Move towards unifying "string literals".
Merge remote-tracking branch 'github/pr/1681'
curl_json: Added example configuration for PHP-FPM.
curl_json: Add ability to set custom plugin name in collected data.
fix indention, revert merge failures
add documentation
write_redis_plugin: Add document for MaxSetDuration
This change adds description for MaxSetDuration, which is
introduced at #2440.
This change adds description for MaxSetDuration, which is
introduced at #2440.
Merge remote-tracking branch 'github/pr/2449'
snmp plugin: Use array instead of cycle in res->errstat check
add option to collect the count of active memory maps for linux processes
Merge remote-tracking branch 'github/pr/2452'
Merge remote-tracking branch 'github/pr/2437'
Merge remote-tracking branch 'github/pr/2034'
Updating the varnish plugin
src/utils_match.c: Reset UTILS_MATCH_CF_GAUGE_INC matches to zero (was: NaN)
Fixes: #2448
Fixes: #2448
Merge remote-tracking branch 'github/pr/2451' into collectd-5.6
Merge remote-tracking branch 'github/pr/2388'
snmp plugin: Style fix
Issue: #2291
Signed-off-by: Florian Forster <octo@collectd.org>
Issue: #2291
Signed-off-by: Florian Forster <octo@collectd.org>
snmp plugin: Fix double free of request PDU
snmp_sess_synch_response() always frees request PDU, in both case of request
error and success. If error condition occurs inside of `while (status == 0)`
loop, double free of `req` happens.
Issue: #2291
Signed-off-by: Florian Forster <octo@collectd.org>
snmp_sess_synch_response() always frees request PDU, in both case of request
error and success. If error condition occurs inside of `while (status == 0)`
loop, double free of `req` happens.
Issue: #2291
Signed-off-by: Florian Forster <octo@collectd.org>
email, exec and unixsock plugins: Use _SC_GETPW_R_SIZE_MAX.
Fixes: #2208
Fixes: #2208
Proper return value from 'swrite()' when connection has been closed
According to POSIX, errno is set only if 'recv()' returns -1.
When connection has been closed, 'recv()' returns 0 and errno left untouched.
For functions which check errno value after 'swrite()', errno now is set to ECONNRESET,
so they produce correct message 'Connection reset by peer'.
According to POSIX, errno is set only if 'recv()' returns -1.
When connection has been closed, 'recv()' returns 0 and errno left untouched.
For functions which check errno value after 'swrite()', errno now is set to ECONNRESET,
so they produce correct message 'Connection reset by peer'.
memcached: Style fix
snmp plugin: Reworked/fixed res->errstat check
snmp plugin: Added res->errstat check
Collectd does not check for `res->errstat` value after
`snmp_sess_synch_response()` call. In case of error, there is no any data in
`res->variables` actually, but variables are tried to be processed as usual.
Suffix calculation will fail, so all subtrees will be marked as failed, not
only one subtree which caused an error.
The csnmp_instance_list_add() call will fail too, and, as result,
`csnmp_read_table` will finish it's work without any data submission.
The log message like
"snmp plugin: host HOSTNAME: csnmp_instance_list_add failed",
which is put into logs in this case, also has no enough diagnostic data.
Added code to proper check for `res->errstat` and to try to get available data.
Issue: #2291
Collectd does not check for `res->errstat` value after
`snmp_sess_synch_response()` call. In case of error, there is no any data in
`res->variables` actually, but variables are tried to be processed as usual.
Suffix calculation will fail, so all subtrees will be marked as failed, not
only one subtree which caused an error.
The csnmp_instance_list_add() call will fail too, and, as result,
`csnmp_read_table` will finish it's work without any data submission.
The log message like
"snmp plugin: host HOSTNAME: csnmp_instance_list_add failed",
which is put into logs in this case, also has no enough diagnostic data.
Added code to proper check for `res->errstat` and to try to get available data.
Issue: #2291
Merge remote-tracking branch 'github/pr/2446'
msr-index: include GPLv2 header
memcached: Report connections rate
Signed-off-by: Florian Forster <octo@collectd.org>
Signed-off-by: Florian Forster <octo@collectd.org>
Merge remote-tracking branch 'github/pr/1979'
turbostat: better support for mutli packages
If multiple packages are defined, support non-logical core enumeration
by prefixing each core id by its package id
If multiple packages are defined, support non-logical core enumeration
by prefixing each core id by its package id
turbostat: import msr-index header from linux
Since Linux 4.12, the kernel does not expose msr-index.h to the userland
anymore. This commit pulls and hardcode the required definitions.
Since Linux 4.12, the kernel does not expose msr-index.h to the userland
anymore. This commit pulls and hardcode the required definitions.
Merge remote-tracking branch 'github/pr/2440'
Add max_set_duration to set duration for value
This change introduces max_set_duration, the duration for the value
as max_set_size. max_set_size can keep the db size, however, sometime
max_set_size allows to contain old data. max_set_duration can keep
the latest data.
This change introduces max_set_duration, the duration for the value
as max_set_size. max_set_size can keep the db size, however, sometime
max_set_size allows to contain old data. max_set_duration can keep
the latest data.
uptime plugin: don't cache boot time and simplify Linux code
Caching boottime on startup yields incorrect uptime values if system
date changes after the daemon is started.
This is almost certain to happen on embedded systems without RTC, where
clock is set from NTP server at some point after boot process.
On Linux, we can retrieve uptime directly by either reading /proc/uptime
(it's sufficient to read a few bytes) or calling sysinfo() function.
Use the latter since it's the most efficient way in speed, memory
requirements and code simplicity terms.
Caching boottime on startup yields incorrect uptime values if system
date changes after the daemon is started.
This is almost certain to happen on embedded systems without RTC, where
clock is set from NTP server at some point after boot process.
On Linux, we can retrieve uptime directly by either reading /proc/uptime
(it's sufficient to read a few bytes) or calling sysinfo() function.
Use the latter since it's the most efficient way in speed, memory
requirements and code simplicity terms.
Merge remote-tracking branch 'github/pr/2442'
zfs_arc plugin: Avoid resetting global variables from init().
Fixes: #973
Fixes: #973
zfs_arc: derive hit/miss stats for ratio calculations
tail plugin: Allow to set "bucket" metrics type
When several distributions needs to be calculated in one 'tail' instance,
all their metrics will be reported as single 'bucket' type with the same plugin instance value.
That is confusing and this patch allows to split these metrics to their own types.
When several distributions needs to be calculated in one 'tail' instance,
all their metrics will be reported as single 'bucket' type with the same plugin instance value.
That is confusing and this patch allows to split these metrics to their own types.
Merge remote-tracking branch 'github/pr/2439'
cpu plugin: add new options to the default configuration file.
cpu plugin: adjust numfields conditions in cpu_read().
cpu plugin: adjust coding style (variable declaration).
cpu plugin: update documentation.
cpu plugin: subtract guest states from user/nice.
Merge pull request #2441 from zerkms/ISSUE-2433
Added `ReportIO` option to the `swap` plugin
Added `ReportIO` option to the `swap` plugin
swap plugin: Added `ReportIO` option
lxc/lxd containers at the moment cannot properly report the swap io (the corresponding /proc/vmstat are not virtualized), so added an option to disable that reporting.
Enabled by default.
Closes: #2433
lxc/lxd containers at the moment cannot properly report the swap io (the corresponding /proc/vmstat are not virtualized), so added an option to disable that reporting.
Enabled by default.
Closes: #2433
Merge remote-tracking branch 'github/pr/2377'
Filecount plugin: Code style changes, clang-format
Filecount plugin: Custom values for reported plugin, type and type instance
* Allow to set plugin name;
* Allow to set empty plugin instance;
* Allow to set metric types: Added 'FilesSizeType' and 'FilesCountType' options;
* Allow to disable metric reporting;
* Allow to set metrics type instance
* Allow to set plugin name;
* Allow to set empty plugin instance;
* Allow to set metric types: Added 'FilesSizeType' and 'FilesCountType' options;
* Allow to disable metric reporting;
* Allow to set metrics type instance
Merge remote-tracking branch 'github/pr/2434'
Merge remote-tracking branch 'github/pr/2435'
Merge branch 'collectd-5.7'
Merge branch 'collectd-5.6' into collectd-5.7
src/daemon/collectd.c: Fix implementation of the -B option.
Also add a manual page entry.
Issue: #2421
Pull-Request: #2422
Also add a manual page entry.
Issue: #2421
Pull-Request: #2422
Merge remote-tracking branch 'github/pr/2422'
Fixes: #2421
Fixes: #2421
table: Allow custom plugin name to be reported
Add daemon option to avoid making BaseDir
One possible implementation of collectd/collectd#2421
One possible implementation of collectd/collectd#2421
openvpn: Changes after review, clang-formatting
openvpn: reworked status file parser
* Added detection of status fields index by parsing 'HEADER' lines.
This allows to support status files from latest OpenVPN-2.4 and possible from future versions;
* Fixed a bug with OpenVPN status file version 3 where delimiter is 'tab' (not space or comma);
* Status file version detection was moved from configuration callback to read callback;
* Now 'plugin_register_complex_read()' is used for registering read callback.
Closes: #2128
* Added detection of status fields index by parsing 'HEADER' lines.
This allows to support status files from latest OpenVPN-2.4 and possible from future versions;
* Fixed a bug with OpenVPN status file version 3 where delimiter is 'tab' (not space or comma);
* Status file version detection was moved from configuration callback to read callback;
* Now 'plugin_register_complex_read()' is used for registering read callback.
Closes: #2128
cpu plugin: add linux-specific "guest" states.
collectd.conf(5): Document dependencies between mqtt's TLS options better.
mqtt plugin: Add support for TLS in Subscriber blocks.
Fixes: #2419
Fixes: #2419
perl plugin: Improve error message.
Merge remote-tracking branch 'github/pr/2391' into collectd-5.6
nfs plugin: Fix typo