Ruben Kerkhof [Fri, 7 Jul 2017 16:43:39 +0000 (18:43 +0200)]
Merge branch 'collectd-5.7'
Fixes #2328
Conflicts:
src/curl_json.c
src/curl_xml.c
Ruben Kerkhof [Fri, 7 Jul 2017 16:40:55 +0000 (18:40 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Ruben Kerkhof [Fri, 7 Jul 2017 14:00:48 +0000 (16:00 +0200)]
snmp_agent: fix format specifiers
make all-am
make[1]: Entering directory '/home/ruben/src/collectd'
CC src/snmp_agent_la-snmp_agent.lo
In file included from ./src/daemon/common.h:33:0,
from src/snmp_agent.c:31:
src/snmp_agent.c: In function ‘snmp_agent_dump_data’:
src/snmp_agent.c:42:21: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
#define PLUGIN_NAME "snmp_agent"
^
./src/daemon/plugin.h:400:42: note: in definition of macro ‘DEBUG’
#define DEBUG(...) plugin_log(LOG_DEBUG, __VA_ARGS__)
^~~~~~~~~~~
src/snmp_agent.c:192:13: note: in expansion of macro ‘PLUGIN_NAME’
DEBUG(PLUGIN_NAME ": OID[%d]: %s", i, oid_str);
^~~~~~~~~~~
src/snmp_agent.c:192:35: note: format string is defined here
DEBUG(PLUGIN_NAME ": OID[%d]: %s", i, oid_str);
~^
%ld
CCLD snmp_agent.la
Ruben Kerkhof [Thu, 6 Jul 2017 16:54:45 +0000 (18:54 +0200)]
Merge pull request #2348 from maryamtahhan/feat_dpdkevents_fixes
Feat dpdkevents fixes
Przemyslaw Szczerbik [Fri, 7 Apr 2017 12:48:39 +0000 (13:48 +0100)]
dpdk plugins: bug fixes and improvements
- Do not return error in configuration callback, which will cause
collectd to be stopped. Instead, report error in init callback, which
will unload incorrectly configured plugin.
- Remove redundant ProcessType configuration option, which was always set to
"secondary"
- Use functions from cf_util_get family for parsing config file
- In case of parsing errors perform plugin cleanup
- Correctly remove previously created shared memory object if user specified
"SharedMemObj" option with different value than default
- Prevent segmentation fault in dpdk_shm_cleanup
- Change 'send_updated' and 'notify' variable types to _Bool
Change-Id: Id7dfc7f25d2cebf332d47bcd5afaaebf577945d6
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Krzysztof Matczak [Wed, 5 Apr 2017 15:57:25 +0000 (16:57 +0100)]
dpdkevents: initialization fixes
This patch removes impact of keep_alive init failure on
link_status processing. Also changed default behaviour in configless
mode, where no <Plugin/> stanza is defined. Now both keep_alive
and link_status are enabled by default. On the other hand if
<Plugin/> stanza is present, both features are disabled by default
and user is responsible for specifying which one is active or not.
Change-Id: I03f7ab88e89404e03532677d00a966ddb80d1552
Signed-off-by: Krzysztof Matczak <krzysztofx.matczak@intel.com>
Przemyslaw Szczerbik [Tue, 28 Mar 2017 08:53:32 +0000 (09:53 +0100)]
dpdkevents: detect primary DPDK application (re)start
Current implementation attempts to open KA SHM only once during init callback.
If at the time primary DPDK application is not running shm_open will fail, which
will result in dpdkevents plugin being unloaded. Move KA SHM open logic to read
callback to allow plugin to attach to primary DPDK application later without a
need to restart collectd. Moreover, it will allow to determine if primary DPDK
application was killed and plugin should stop dispatching KA statistics.
Additionally modify dpdk_event_keep_alive_shm_open function to detect restart of
primary DPDK application. When primary DPDK application (with KA support) is
restarted it unlinks existing shared memory object and creates a new one. It's
necessary for the plugin to create a new SHM mapping in order to prevent reading
statistics from stale SHM block.
Change-Id: I7fc0047ba117db771ada58a40cbe0b2bddd00112
Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
Ruben Kerkhof [Tue, 4 Jul 2017 15:27:03 +0000 (17:27 +0200)]
Merge pull request #2341 from rpv-tomsk/issue-2328
curl plugins: Use configured URL for all poll cycles
Pavel Rochnyack [Tue, 4 Jul 2017 10:31:46 +0000 (17:31 +0700)]
curl plugins: Use configured URL for all poll cycles
After redirect received, Collectd send subsequent requests to new location.
That is wrong - Collectd should use configured URL for all poll cycles, regardless of the responses received previously.
Problem was caused by libcurl issue 1631. To avoid that we set request url in each poll cycle.
Closes: #2328
Ruben Kerkhof [Sun, 2 Jul 2017 18:52:18 +0000 (20:52 +0200)]
Merge branch 'collectd-5.7'
Ruben Kerkhof [Sun, 2 Jul 2017 18:34:59 +0000 (20:34 +0200)]
tcpconns plugin: fix build on FreeBSD current
FreeBSD commit https://github.com/freebsd/freebsd/commit/
3a5c9aaf2b2ea107bcaf0ba28b706238d92bdbbd
hides inpcb and tcpcb from userland.
Patch taken from FreeBSD ports tree, thanks glebius@.
Ruben Kerkhof [Sun, 2 Jul 2017 17:38:12 +0000 (19:38 +0200)]
write_mongodb: use ssnprintf_alloc to create dsn
Ruben Kerkhof [Sun, 2 Jul 2017 17:22:20 +0000 (19:22 +0200)]
write_mongodb: fix potential NULL dereference
scan-build: Using '/usr/bin/clang-4.0' for static analysis
make all-am
make[1]: Entering directory '/home/ruben/src/collectd'
CC src/write_mongodb_la-write_mongodb.lo
src/write_mongodb.c:173:41: warning: Null pointer passed as an argument to a 'nonnull' parameter
strlen(node->passwd) + strlen(node->host) + 5 +
^~~~~~~~~~~~~~~~~~
src/write_mongodb.c:199:42: warning: Null pointer passed as an argument to a 'nonnull' parameter
uri_length = strlen(format_string) + strlen(node->host) + 5 + 1;
^~~~~~~~~~~~~~~~~~
2 warnings generated.
CCLD write_mongodb.la
Ruben Kerkhof [Sun, 2 Jul 2017 17:16:55 +0000 (19:16 +0200)]
write_mongodb.c: clang-format
Ruben Kerkhof [Sun, 2 Jul 2017 13:44:39 +0000 (15:44 +0200)]
Only build libplugin_mock.la during make check
Ruben Kerkhof [Sun, 2 Jul 2017 12:38:36 +0000 (14:38 +0200)]
Merge pull request #2315 from mcorbin/feat/riemann-microseconds-resolution
Add micro-seconds resolution in write_riemann
Ruben Kerkhof [Sun, 2 Jul 2017 11:34:05 +0000 (13:34 +0200)]
Merge pull request #2301 from rpv-tomsk/fix-apcups
apcups: Fix reconnect implementation
Ruben Kerkhof [Sat, 1 Jul 2017 13:43:42 +0000 (15:43 +0200)]
ipvs plugin: remove custom kernel source support
Linux has shipped ipvs.h in its uapi for ages now.
Ruben Kerkhof [Sat, 1 Jul 2017 13:27:21 +0000 (15:27 +0200)]
configure.ac: minor cleanup
Ruben Kerkhof [Sat, 1 Jul 2017 13:18:08 +0000 (15:18 +0200)]
configure.ac: remove some whitespace
Ruben Kerkhof [Sat, 1 Jul 2017 13:09:40 +0000 (15:09 +0200)]
snmp_agent plugin: fix a few build warnings
```
CC src/snmp_agent_la-snmp_agent.lo
src/snmp_agent.c:166:25: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:190:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:289:37: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (i = 0; i < key_len && offset < oid->oid_len; i++)
~~~~~~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:355:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++)
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:420:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < (*dd)->oids_len; i++)
~ ^ ~~~~~~~~~~~~~~~
src/snmp_agent.c:429:25: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < (*dd)->oids_len; i++)
~ ^ ~~~~~~~~~~~~~~~
src/snmp_agent.c:440:25: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < (*dd)->oids_len; i++)
~ ^ ~~~~~~~~~~~~~~~
src/snmp_agent.c:532:20: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
assert(oid_index < values_num);
~~~~~~~~~ ^ ~~~~~~~~~~
/usr/include/assert.h:89:5: note: expanded from macro 'assert'
((expr) \
^~~~
src/snmp_agent.c:584:25: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:768:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:806:25: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:821:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
src/snmp_agent.c:1287:23: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned long') [-Wsign-compare]
for (int i = 0; i < dd->oids_len; i++) {
~ ^ ~~~~~~~~~~~~
13 warnings generated.
```
Ruben Kerkhof [Sat, 1 Jul 2017 12:54:41 +0000 (14:54 +0200)]
ipvs plugin: minor cleanup
- Remove some Yoda conditionals
- Give some variables better names
- Use C99 designated initializers in some places.
Ruben Kerkhof [Sat, 1 Jul 2017 10:57:27 +0000 (12:57 +0200)]
Merge pull request #2327 from rpv-tomsk/snmp-custom-port
snmp plugin: Option `Address` documented in more details.
Ruben Kerkhof [Fri, 30 Jun 2017 15:44:48 +0000 (17:44 +0200)]
email plugin: fix Yoda conditionals
Ruben Kerkhof [Fri, 30 Jun 2017 14:53:12 +0000 (16:53 +0200)]
Fix mismerge
Ruben Kerkhof [Fri, 30 Jun 2017 14:37:25 +0000 (16:37 +0200)]
exec plugin: remove some Yoda conditionals
Ruben Kerkhof [Fri, 30 Jun 2017 14:20:16 +0000 (16:20 +0200)]
Merge branch 'collectd-5.7'
Conflicts:
src/openldap.c
Ruben Kerkhof [Fri, 30 Jun 2017 14:17:06 +0000 (16:17 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Ruben Kerkhof [Fri, 30 Jun 2017 14:15:25 +0000 (16:15 +0200)]
email, exec and unixsock plugins: enlarge buffer for getgrnam_r result
Thanks to Jeremie Courreges-Anglas and Daniel Jakots.
Ruben Kerkhof [Fri, 30 Jun 2017 14:12:57 +0000 (16:12 +0200)]
email, exec and unixsock plugins: fix error handling
Diff from Jeremie Courreges-Anglas, via Daniel Jakots
Ruben Kerkhof [Wed, 28 Jun 2017 17:38:12 +0000 (19:38 +0200)]
Merge pull request #2331 from mfournier/ldap_unbind-segfault
openldap: check ld structure before passing it to ldap_unbind()
Marc Fournier [Wed, 28 Jun 2017 11:46:59 +0000 (13:46 +0200)]
openldap: check ld structure before passing it to ldap_unbind()
This prevents collectd from segfaulting when the ldap session setup
fails before opening a connection to openldap (syntax error in the URL
option for example).
Pavel Rochnyack [Sun, 25 Jun 2017 07:40:07 +0000 (14:40 +0700)]
snmp: Option `Address` documented in more details.
As described at http://net-snmp.sourceforge.net/dev/agent/structsnmp__session.html,
it may include transport specifier and/or port number.
Configuration examples are updated too.
Closes: #2302
Ruben Kerkhof [Wed, 21 Jun 2017 09:55:35 +0000 (11:55 +0200)]
Merge pull request #2320 from maryamtahhan/feat_snmp_compilation_issue
SNMP Agent: Fix compilation issue of snmp_agent plugin
Mytnyk, VolodymyrX [Tue, 20 Jun 2017 10:14:41 +0000 (11:14 +0100)]
SNMP Agent: Fix compilation issue on Net-SNMP v5.4.3
The compilation of SNMP Agent fails on older version of
Net-SNMP (5.4.3).
Signed-off-by: Mytnyk, VolodymyrX <volodymyrx.mytnyk@intel.com>
mcorbin [Tue, 13 Jun 2017 19:12:07 +0000 (21:12 +0200)]
Add micro-seconds resolution in write_riemann
riemann-c-client 1.10.0 and higher supports micro-seconds time
resolution for Riemann events.
Florian Forster [Tue, 6 Jun 2017 18:11:05 +0000 (20:11 +0200)]
Bump version to 5.7.2; Update ChangeLog.
Ruben Kerkhof [Tue, 6 Jun 2017 08:31:07 +0000 (10:31 +0200)]
Merge branch 'collectd-5.7'
Conflicts:
src/intel_rdt.c
Ruben Kerkhof [Tue, 6 Jun 2017 08:28:19 +0000 (10:28 +0200)]
Merge pull request #2310 from octo/ff/intel_rdt
intel_rdt plugin: Remove unnecessary goto.
Florian Forster [Mon, 5 Jun 2017 05:33:36 +0000 (07:33 +0200)]
intel_rdt plugin: Remove unnecessary goto.
Ruben Kerkhof [Thu, 1 Jun 2017 18:38:17 +0000 (20:38 +0200)]
Merge branch 'collectd-5.7'
Ruben Kerkhof [Thu, 1 Jun 2017 18:37:49 +0000 (20:37 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Ruben Kerkhof [Tue, 30 May 2017 15:25:17 +0000 (17:25 +0200)]
Bind plugin: plug a few leaks
Fixes: #2303
Ruben Kerkhof [Thu, 1 Jun 2017 18:35:19 +0000 (20:35 +0200)]
Merge pull request #2307 from saiarcot895/mongo-mem-leak
Use bson_destroy instead of bson_free, and fix memleak issue.
Saikrishna Arcot [Wed, 31 May 2017 14:49:25 +0000 (07:49 -0700)]
Use bson_destroy instead of bson_free, and fix memleak issue.
Ruben Kerkhof [Tue, 30 May 2017 09:33:13 +0000 (11:33 +0200)]
Merge pull request #2304 from archii/fix-ipmi-docs-typo
Fix ipmi docs typo
archii [Tue, 30 May 2017 00:56:56 +0000 (10:56 +1000)]
Merge pull request #1 from archii/archii-fix-docs-typo-1
fix typo in collectd.conf.pod
archii [Tue, 30 May 2017 00:54:47 +0000 (10:54 +1000)]
fix typo in collectd.conf.pod
Ruben Kerkhof [Sat, 27 May 2017 14:12:41 +0000 (16:12 +0200)]
python plugin: stop disabling strict aliasing
According to https://bugs.python.org/issue1718153, this has been fixed
in python 2.6, the oldest version we support.
Ruben Kerkhof [Sat, 27 May 2017 13:53:46 +0000 (15:53 +0200)]
configure.ac: slightly tweak dpdk check
Ruben Kerkhof [Sat, 27 May 2017 13:46:24 +0000 (15:46 +0200)]
configure.ac: keep libs sorted
Ruben Kerkhof [Sat, 27 May 2017 13:27:54 +0000 (15:27 +0200)]
configure.ac: detect compiler vendor
I'll use this in followup patches to detect if the compiler supports
various warning flags. For example, a long standing issue is that older
version of the Sun studio compiler doesn't support -Werror.
Ruben Kerkhof [Sat, 27 May 2017 13:06:47 +0000 (15:06 +0200)]
configure.ac: no need for body for preproc test
Ruben Kerkhof [Sat, 27 May 2017 13:05:45 +0000 (15:05 +0200)]
configure.ac: use preprocessor to detect libpqos version
No need to run the program.
Ruben Kerkhof [Sat, 27 May 2017 12:59:57 +0000 (14:59 +0200)]
configure.ac: use preprocessor to detect dpdk version
The test doesn't run any code, so no need to compile it.
Ruben Kerkhof [Sat, 27 May 2017 12:54:22 +0000 (14:54 +0200)]
configure.ac: replace AS_IF with normal test
AS_IF is slightly more portable, but slightly less readable.
Ruben Kerkhof [Sat, 27 May 2017 12:52:34 +0000 (14:52 +0200)]
configure.ac: replace last few tabs with spaces
Ruben Kerkhof [Sat, 27 May 2017 12:51:11 +0000 (14:51 +0200)]
configure.ac: fix libpqos detection style
Ruben Kerkhof [Sat, 27 May 2017 12:30:33 +0000 (14:30 +0200)]
snmp-agent: fix build on RHEL6
libnetsnmpagent.so from net-snmp 5.5 needs some symbols from libnetsnmphelpers.so,
but does not link against it on RHEL5.
Work around this by looking for one of those symbols in the helper lib,
and if found, link against it.
Later versions of net-snmp seem to have moved those symbols to
libnetsnmpagent.so, so it's not an issue there.
Ruben Kerkhof [Sat, 27 May 2017 11:46:07 +0000 (13:46 +0200)]
configure.ac: remove unneeded include
All files in AC_CONFIG_MACRO_DIR are included by default.
Ruben Kerkhof [Sat, 27 May 2017 11:37:06 +0000 (13:37 +0200)]
configure.ac: improve libnetsnmpagent detection
Turn it into a separate check, which also makes it possible to disable
it.
snmp_agent and snmp are separate plugins, and on at least Fedora are
packaged separately.
A beneficial side effect is that this reduces overlinking of snmp.so
with libnetsnmpagent.so
Ruben Kerkhof [Sat, 27 May 2017 10:30:35 +0000 (12:30 +0200)]
snmp-agent: check for the right header
We never include net-snmp/agent/agent_module_config.h
Ruben Kerkhof [Sat, 27 May 2017 10:24:40 +0000 (12:24 +0200)]
configure.ac: fix style for snmpagent plugin
Ruben Kerkhof [Sat, 27 May 2017 10:07:30 +0000 (12:07 +0200)]
configure.ac: fix overquoting
Pavel Rochnyack [Fri, 26 May 2017 06:46:09 +0000 (12:46 +0600)]
apcups: Fix reconnect implementation
Implementation was broken, it doesn't reconnects as planned.
Iain Buclaw [Fri, 19 May 2017 10:55:37 +0000 (12:55 +0200)]
format_graphite: Error if call to uc_get_rate fails to return a value.
This prevents a wrong value being sent to graphite for DERIVE types.
See #2209
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Fri, 19 May 2017 13:10:46 +0000 (15:10 +0200)]
snmp plugin: Avoid allocation of temporary buffers on the heap.
Florian Forster [Fri, 19 May 2017 06:39:45 +0000 (08:39 +0200)]
src/daemon/utils_cache.c: Add debug message for lookup of missing metrics.
Issue: #1234
Florian Forster [Fri, 19 May 2017 06:34:37 +0000 (08:34 +0200)]
src/daemon/utils_cache.c: Remove unnecessary cast.
(data_set_t).ds_num has been changed to be a size_t.
Florian Forster [Fri, 19 May 2017 06:04:44 +0000 (08:04 +0200)]
Merge remote-tracking branch 'github/pr/2285'
Florian Forster [Fri, 19 May 2017 04:52:39 +0000 (06:52 +0200)]
Merge pull request #2290 from BrandonArp/snmp_agent_rpm
allow configuration of snmp_agent in rpm builds
Brandon Arp [Thu, 18 May 2017 21:38:33 +0000 (14:38 -0700)]
allow configuration of snmp_agent in rpm builds
Ruben Kerkhof [Thu, 18 May 2017 09:19:09 +0000 (11:19 +0200)]
Merge pull request #2287 from BrandonArp/fix_am_1_11
fix build on automake 1.11
Florian Forster [Wed, 17 May 2017 06:17:38 +0000 (08:17 +0200)]
curl_json plugin: Work around a limitation in EPEL6's GCC.
Florian Forster [Thu, 18 May 2017 08:10:06 +0000 (10:10 +0200)]
Merge remote-tracking branch 'github/pr/2105'
Florian Forster [Thu, 18 May 2017 08:07:03 +0000 (10:07 +0200)]
Merge remote-tracking branch 'github/pr/2190'
Florian Forster [Thu, 18 May 2017 08:05:42 +0000 (10:05 +0200)]
chrony plugin: Re-run clang-format.
Florian Forster [Thu, 18 May 2017 07:38:54 +0000 (09:38 +0200)]
memcached plugin: Expand "del" to "delete" for clarity.
theairkit [Thu, 1 Dec 2016 14:22:45 +0000 (17:22 +0300)]
memcached plugin: Add delete_{hits,misses} metrics.
Florian Forster [Thu, 18 May 2017 07:23:32 +0000 (09:23 +0200)]
src/daemon/utils_cache.c: Read time *after* acquiring the lock.
Fixes: #1193
Brandon Arp [Wed, 17 May 2017 01:38:48 +0000 (18:38 -0700)]
fix build on automake 1.11
Florian Forster [Wed, 17 May 2017 09:31:25 +0000 (11:31 +0200)]
snmp_agent plugin: Don't export the g_agent variable.
Florian Forster [Wed, 17 May 2017 09:30:18 +0000 (11:30 +0200)]
snmp_agent plugin: Remove parenthesis around return values.
See also: #2277
Florian Forster [Wed, 17 May 2017 09:28:27 +0000 (11:28 +0200)]
snmp_agent plugin: Format with clang-format.
Florian Forster [Wed, 17 May 2017 06:40:59 +0000 (08:40 +0200)]
Merge remote-tracking branch 'github/pr/2277'
Florian Forster [Wed, 17 May 2017 06:01:29 +0000 (08:01 +0200)]
amqp plugin: Enable the "ExchangeType" for publishers, too.
Fixes: #2286
Florian Forster [Tue, 16 May 2017 20:44:26 +0000 (22:44 +0200)]
curl_json plugin: Refactor the way trees/keys are stored.
Previously, keys had a "magic" as their first member which was used to
differentiate between the two types when they were returned from the
binary search tree.
This patch creates a new struct, cj_tree_entry_t, which includes an enum
identifying which union member is valid.
Florian Forster [Tue, 16 May 2017 15:01:49 +0000 (17:01 +0200)]
curl_json plugin: Expand unit tests.
This adds various tests involving arrays.
Issue: #2266
Florian Forster [Tue, 16 May 2017 17:36:27 +0000 (19:36 +0200)]
Merge branch 'collectd-5.7'
Florian Forster [Tue, 16 May 2017 17:34:25 +0000 (19:34 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Florian Forster [Mon, 15 May 2017 12:40:26 +0000 (14:40 +0200)]
curl_json plugin: Fix array index and key handling.
Previously, the "key" was loaded by calling cj_cb_map_key() from
cj_cb_inc_array_index(). That means that the key for the previous element
was loaded as the array index was updated for the next element, resulting
in an off-by-one error. Also the key was not unset in time, resulting in
two metrics with the same identifier being created.
This patch fixes this with the following changes:
* cj_advance_array() (nee cj_cb_inc_array_index()) now loads the key for
the new index position instead of the previous one.
* The initial "0" key is loaded from cj_cb_start_array().
* cj_advance_array() always updates the key. The "update_key" argument
has been removed.
* Refactoring: key loading has been moved out of cj_cb_map_key() and
into its own function, cj_load_key().
Unit tests are in a separate commit for easier cherry-picking.
Fixes: #2266
Florian Forster [Tue, 16 May 2017 12:15:07 +0000 (14:15 +0200)]
Merge pull request #2283 from octo/ff/valgrind
valgrind.FreeBSD.suppress: parse_value(): Always suppress the strlen(…
Florian Forster [Tue, 16 May 2017 09:27:53 +0000 (11:27 +0200)]
valgrind.FreeBSD.suppress: parse_value(): Always suppress the strlen() false positive.
Previously, this was only suppressed when called via parse_values()
(note the plural).
Fixes: #2282
Florian Forster [Mon, 15 May 2017 12:40:56 +0000 (14:40 +0200)]
curl_json plugin: Implement a unit test.
Issue: #2266
Florian Forster [Mon, 15 May 2017 15:25:44 +0000 (17:25 +0200)]
src/testing.h: Fix result of EXPECT_EQ_DOUBLE() when actual is NAN.
Florian Forster [Mon, 15 May 2017 15:25:08 +0000 (17:25 +0200)]
src/daemon/plugin_mock.c: Add stubs for additional functions.
Florian Forster [Mon, 15 May 2017 12:59:14 +0000 (14:59 +0200)]
curl_json plugin: Split cj_append_key() out of cj_config_add_key().
Florian Forster [Tue, 16 May 2017 07:04:44 +0000 (09:04 +0200)]
curl_json plugin: Use struct initializer.
Florian Forster [Mon, 15 May 2017 12:57:46 +0000 (14:57 +0200)]
curl_json plugin: Remove unused field from cj_t.
Ruben Kerkhof [Mon, 15 May 2017 08:53:07 +0000 (10:53 +0200)]
Merge pull request #2279 from octo/ff/virt
virt plugin: Replace virTypedParamsFree() with virTypedParamsClear() …