Florian Forster [Tue, 28 Nov 2017 07:21:48 +0000 (08:21 +0100)]
aggregation plugin: Check return value of config functions.
CID: 179235
Florian Forster [Tue, 28 Nov 2017 07:17:05 +0000 (08:17 +0100)]
aggregation plugin: Declare variables on initialization.
collectd bot [Sat, 25 Nov 2017 08:18:51 +0000 (09:18 +0100)]
Auto-Merge pull request #2575 from octo/cid/37934
Automatically merged due to "Automerge" label
Florian Forster [Sat, 25 Nov 2017 07:28:35 +0000 (08:28 +0100)]
ping plugin: Lock the mutex later.
Coverity gets confused if holding the lock while allocating pingobj.
CID: 37934
collectd bot [Wed, 22 Nov 2017 07:14:52 +0000 (08:14 +0100)]
Auto-Merge pull request #2568 from octo/cid/157645
Automatically merged due to "Automerge" label
Florian Forster [Wed, 22 Nov 2017 06:47:14 +0000 (07:47 +0100)]
set target: Fix memory leak.
CID: 157645
collectd bot [Mon, 20 Nov 2017 14:10:07 +0000 (15:10 +0100)]
Auto-Merge pull request #2565 from octo/cid/37966
Automatically merged due to "Automerge" label
Florian Forster [Mon, 20 Nov 2017 13:26:41 +0000 (14:26 +0100)]
table plugin: Refactor realloc() calls.
Increase the number of elements in the successful path only, instead of
increasing it immediately and decreasing on error.
Florian Forster [Mon, 20 Nov 2017 13:19:46 +0000 (14:19 +0100)]
table plugin: Assert that result_num is zero when result is NULL.
The Coverity check gets confused by the `tbl->results == NULL` check:
due to the check, is assumes that tbl->results *may* be NULL. It then
discovers the dereference in tbl_clear() without realizing that "result"
and "result_num" are linked and that situation can't happen. This
assertion makes this link a bit easier to conclude.
CID: 37966
collectd bot [Mon, 20 Nov 2017 12:06:19 +0000 (13:06 +0100)]
Auto-Merge pull request #2563 from octo/cid/179225
Automatically merged due to "Automerge" label
collectd bot [Mon, 20 Nov 2017 11:36:14 +0000 (12:36 +0100)]
Auto-Merge pull request #2561 from octo/cid/157643
Automatically merged due to "Automerge" label
collectd bot [Mon, 20 Nov 2017 11:15:53 +0000 (12:15 +0100)]
Auto-Merge pull request #2560 from octo/cid/179237
Automatically merged due to "Automerge" label
collectd bot [Mon, 20 Nov 2017 10:42:03 +0000 (11:42 +0100)]
Auto-Merge pull request #2559 from octo/cid/179236
Automatically merged due to "Automerge" label
Florian Forster [Mon, 20 Nov 2017 10:21:41 +0000 (11:21 +0100)]
gps plugin: Properly unlock mutex after waiting.
How did this ever work?!
CID: 158522
Florian Forster [Mon, 20 Nov 2017 10:19:52 +0000 (11:19 +0100)]
write_tsdb plugin: Unlock mutex before destroying it.
CID: 179224
Florian Forster [Mon, 20 Nov 2017 10:18:32 +0000 (11:18 +0100)]
write_graphite plugin: Unlock mutex before destroying it.
CID: 179225
Florian Forster [Mon, 20 Nov 2017 10:04:01 +0000 (11:04 +0100)]
set target: Ensure that int being cast to size_t is positive or zero.
CID: 157643
Florian Forster [Mon, 20 Nov 2017 09:50:51 +0000 (10:50 +0100)]
write_sensu plugin: Unlock mutex before destroying it.
CID: 179237
Florian Forster [Mon, 20 Nov 2017 09:43:10 +0000 (10:43 +0100)]
src/utils_format_json.c: Check return values of yajl_gen_* functions.
CID: 179228, 179236, 179239
collectd bot [Fri, 17 Nov 2017 17:20:21 +0000 (18:20 +0100)]
Auto-Merge pull request #2554 from octo/cid/179227
Automatically merged due to "Automerge" label
Florian Forster [Fri, 17 Nov 2017 16:16:39 +0000 (17:16 +0100)]
write_riemann plugin: Unlock mutex before destroying it.
CID: 179227
collectd bot [Fri, 17 Nov 2017 15:08:50 +0000 (16:08 +0100)]
Auto-Merge pull request #2547 from octo/cid/81390
Automatically merged due to "Automerge" label
Florian Forster [Fri, 17 Nov 2017 14:15:32 +0000 (15:15 +0100)]
gps plugin: Fix double unlock.
CID: 179241
Florian Forster [Fri, 17 Nov 2017 13:56:06 +0000 (14:56 +0100)]
snmp plugin: Ensure that index is within bounds.
CID: 81389, 81390
collectd bot [Fri, 17 Nov 2017 12:15:19 +0000 (13:15 +0100)]
Auto-Merge pull request #2545 from octo/turbostat
Automatically merged due to "Automerge" label
Florian Forster [Fri, 17 Nov 2017 10:51:43 +0000 (11:51 +0100)]
contrib/format.sh src/msr-index.h src/turbostat.c
Vincent Brillault [Tue, 26 Sep 2017 17:34:03 +0000 (19:34 +0200)]
msr-index: include GPLv2 header
Signed-off-by: Florian Forster <octo@collectd.org>
Vincent Brillault [Mon, 25 Sep 2017 19:21:45 +0000 (21:21 +0200)]
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.
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Wed, 15 Nov 2017 21:31:47 +0000 (22:31 +0100)]
src/daemon/meta_data.c: Fix double unlock.
CID: 179245
Feike Steenbergen [Wed, 15 Nov 2017 07:46:57 +0000 (08:46 +0100)]
Fix documentation typo for PostgreSQL plugin
In collectd/src/postgresql_default.conf the name for the backends
query is plural, yet in the documentation it is singular. This caused
me some lost time when running this plugin.
It is also wrongly listed on the wiki:
https://collectd.org/wiki/index.php/Plugin:PostgreSQL
Signed-off-by: Florian Forster <octo@collectd.org>
Marc Fournier [Wed, 8 Nov 2017 16:26:51 +0000 (17:26 +0100)]
postgresql: fix last sum() related parse errors
These queries return empty values when a database doesn't have any
tables yet, which results in collectd logging this error every Interval:
```
db query utils: udb_result_submit: Parsing `' as derive failed.
```
Related to #1905
collectd bot [Sun, 5 Nov 2017 06:26:30 +0000 (07:26 +0100)]
Auto-Merge pull request #2518 from octo/issue/2510
Automatically merged due to "Automerge" label
Florian Forster [Sun, 5 Nov 2017 05:23:24 +0000 (06:23 +0100)]
netlink plugin: Improve error reporting for mnl_attr_validate2() and mnl_socket_recvfrom().
Issue: #2510
Pavel Rochnyack [Fri, 20 Oct 2017 13:54:09 +0000 (20:54 +0700)]
Merge branch 'collectd-5.6' into collectd-5.7
tcarreira [Thu, 12 Oct 2017 15:37:28 +0000 (16:37 +0100)]
[2475] write_prometheus plugin: Fix port listening
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Tue, 10 Oct 2017 20:38:05 +0000 (22:38 +0200)]
write_prometheus plugin: Implement logging callback.
Pavel Rochnyack [Mon, 9 Oct 2017 10:22:00 +0000 (17:22 +0700)]
memcached: Fix CPU usage reporting
Signed-off-by: Florian Forster <octo@collectd.org>
Pavel Rochnyack [Sun, 20 Mar 2016 08:51:26 +0000 (14:51 +0600)]
statsd: Document collectd behaviour when receiving the 0.000 timer value
Signed-off-by: Florian Forster <octo@collectd.org>
Mytnyk, VolodymyrX [Thu, 5 Jan 2017 17:14:07 +0000 (17:14 +0000)]
collectd-python(5): Fix documentation of Notification.dispatch().
Cherry-picked from PR #2135
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Fri, 6 Oct 2017 07:50:06 +0000 (09:50 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Florian Forster [Fri, 6 Oct 2017 06:53:37 +0000 (08:53 +0200)]
Bump version to 5.6.3; Update ChangeLog.
Florian Forster [Fri, 6 Oct 2017 05:26:57 +0000 (07:26 +0200)]
Merge remote-tracking branch 'github/pr/2466' into collectd-5.7
Florian Forster [Thu, 5 Oct 2017 20:17:46 +0000 (22:17 +0200)]
write_prometheus plugin: Don't construct struct sockaddr_in6 manually.
On FreeBSD, the struct is an incomplete type.
Florian Forster [Thu, 5 Oct 2017 18:17:21 +0000 (20:17 +0200)]
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*
Florian Forster [Thu, 5 Oct 2017 13:23:28 +0000 (15:23 +0200)]
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
Florian Forster [Fri, 29 Sep 2017 11:05:26 +0000 (13:05 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Florian Forster [Fri, 29 Sep 2017 06:44:22 +0000 (08:44 +0200)]
dbi plugin: Fix additional memory leaks.
Pavel Rochnyack [Thu, 12 May 2016 10:24:00 +0000 (16:24 +0600)]
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>
Florian Forster [Wed, 27 Sep 2017 08:23:40 +0000 (10:23 +0200)]
Merge remote-tracking branch 'github/pr/2451' into collectd-5.6
Pavel Rochnyack [Tue, 26 Sep 2017 15:30:52 +0000 (22:30 +0700)]
snmp plugin: Style fix
Issue: #2291
Signed-off-by: Florian Forster <octo@collectd.org>
Pavel Rochnyack [Wed, 31 May 2017 16:27:13 +0000 (23:27 +0700)]
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>
Florian Forster [Wed, 27 Sep 2017 06:07:10 +0000 (08:07 +0200)]
email, exec and unixsock plugins: Use _SC_GETPW_R_SIZE_MAX.
Fixes: #2208
Florian Forster [Thu, 21 Sep 2017 15:22:39 +0000 (17:22 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Florian Forster [Wed, 20 Sep 2017 17:38:10 +0000 (19:38 +0200)]
perl plugin: Improve error message.
Florian Forster [Wed, 20 Sep 2017 17:34:56 +0000 (19:34 +0200)]
Merge remote-tracking branch 'github/pr/2391' into collectd-5.6
Florian Forster [Mon, 18 Sep 2017 06:58:44 +0000 (08:58 +0200)]
Merge pull request #2417 from bluca/dpdk_pkgconfig_backport
configure.ac: dpdk: use pkg-config - 5.7
Marc Fournier [Mon, 4 Sep 2017 09:51:04 +0000 (11:51 +0200)]
collectd.spec: avoid accidentally picking an ancient/unsupported java version
Neil Wilson [Thu, 23 Feb 2017 17:03:34 +0000 (17:03 +0000)]
ntpd: Correct loop offset and error calculation
Stop the scaling calculation dropping the sign of the underlying value
Fixes: #2188
Christian Ehrhardt [Thu, 17 Aug 2017 19:11:30 +0000 (20:11 +0100)]
configure.ac: dpdk: use pkg-config
To detect cflags and libs use the sometimes provided pkg-config for
libdpdk. That avoids build errors on systems where special flags are
needed and provided by dpdk via pkg-config, but not yet considered by
the collectd build system.
Pavel Rochnyack [Wed, 2 Aug 2017 05:15:50 +0000 (12:15 +0700)]
perl plugin: Added check of proper interpreter initialization.
Closes: #927
Ruben Kerkhof [Fri, 21 Jul 2017 19:09:58 +0000 (21:09 +0200)]
Merge pull request #2375 from rpv-tomsk/small-fix
network: Fix free() before use
Pavel Rochnyack [Fri, 21 Jul 2017 18:06:58 +0000 (01:06 +0700)]
network: Fix free() before use
Florian Forster [Thu, 20 Jul 2017 07:11:09 +0000 (09:11 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Conflicts:
src/rrdtool.c
Pavel Rochnyack [Wed, 19 Jul 2017 12:28:15 +0000 (19:28 +0700)]
rrdtool plugin: Changes after review
* Handle "CacheFlush" as a double
* Updated documentation spelling
Pavel Rochnyack [Mon, 17 Jul 2017 05:26:16 +0000 (12:26 +0700)]
rrdtool plugin: Respect RandomTimeout while calling CacheFlush handler
The CacheFlush implementation does not respect RandomTimeout value.
All cache values, whose flush is deferred by RandomTimeout variance,
will be flushed. That can cause a partial or full cache flush,
depending on the value of RandomTimeout.
Pavel Rochnyack [Mon, 17 Jul 2017 04:26:04 +0000 (11:26 +0700)]
rrdtool plugin: Configuration check moved to init callback
The "RandomTimeout" option value check moved from rrd_get_random_variation()
to rrd_init(). This will save few CPU cycles.
Pavel Rochnyack [Mon, 17 Jul 2017 04:15:52 +0000 (11:15 +0700)]
rrdtool plugin: Remove excessive complain
The plugin complains `Adjusting "RandomTimeout" to 0.000 seconds.` even
if no 'CacheTimeout' was set.
Pavel Rochnyack [Mon, 17 Jul 2017 04:13:53 +0000 (11:13 +0700)]
rrdtool plugin: Raise interval of random_variation to match documentation
Documentation states what the actual timeout for each value is chosen randomly
between <CacheTimeout>-<RandomTimeout> and <CacheTimeout>+<RandomTimeout>.
The implementation did not match this.
Pavel Rochnyack [Sun, 16 Jul 2017 15:56:05 +0000 (22:56 +0700)]
rrdtool plugin: Fix flushing
* Value from wrong option was passed to rrd_cache_flush()
* Variable cache_flush_timeout was used as cdtime_t type time while value was set as simple seconds
* Added info message about CacheFlush ajusting
* Documentation updated
Ruben Kerkhof [Wed, 12 Jul 2017 16:58:18 +0000 (18:58 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
Ruben Kerkhof [Wed, 12 Jul 2017 16:54:49 +0000 (18:54 +0200)]
collectd.service: remove NoNewPrivileges setting
There are various issues with it in combination with SELinux.
See https://marc.info/?l=selinux&m=
149971836431361&w=2 for some
background.
Ruben Kerkhof [Wed, 12 Jul 2017 15:44:34 +0000 (17:44 +0200)]
Merge pull request #2357 from rpv-tomsk/issue-2305
Fixed failed compilation on AIX
Pavel Rochnyack [Tue, 11 Jul 2017 04:08:56 +0000 (11:08 +0700)]
Fixed failed compilation on AIX
Caused by typo in
2761915bed8c6caea41018be3e675aa712cc0b0a / #1842.
Closes: #2305
Ruben Kerkhof [Fri, 7 Jul 2017 16:40:55 +0000 (18:40 +0200)]
Merge branch 'collectd-5.6' into collectd-5.7
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: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 [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).
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: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: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
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 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 [Thu, 18 May 2017 07:23:32 +0000 (09:23 +0200)]
src/daemon/utils_cache.c: Read time *after* acquiring the lock.
Fixes: #1193
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 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 [Mon, 15 May 2017 06:14:03 +0000 (08:14 +0200)]
collectd.conf(5): Fix typo ("queries" vs. "queried").
By avoiding the word: "metrics" is bettern than "statistics".
Ruben Kerkhof [Sun, 14 May 2017 10:38:58 +0000 (12:38 +0200)]
Merge pull request #2278 from octo/ff/perl
perl plugin: Fix potential double-free.
Florian Forster [Sun, 14 May 2017 06:24:51 +0000 (08:24 +0200)]
perl plugin: Fix potential double-free.
The av2notification_meta() function updated it's parameter by doing
(*m) = malloc();
Afterwards, if an error occurred, it would call `free(*m);` and (potentially)
return, leaving an invalid pointer stored in `m`. The caller would then try to
free the returned pointer because it was non-NULL.
This patch fixes this by doing several code cleanups:
* The meta argument is not updated unnecessarily. Instead, a local variable
is allocated and used within the loop and only on success is the return
pointer updated.
* Introduce additional local variables instead of re-using the `tmp` variable
multiple times.
* Name the variable pointing to the end of the linked list appropriately
`tail` and remove one level of indirection. Reading code that is using
pointers to pointers is unnecessarily hard.
Florian Forster [Fri, 12 May 2017 13:17:13 +0000 (15:17 +0200)]
Merge pull request #2275 from octo/ff/prometheus
write_prometheus plugin: Fix incorrect use of realloc().
Florian Forster [Fri, 12 May 2017 13:16:50 +0000 (15:16 +0200)]
Merge pull request #2274 from octo/ff/putval
src/utils_cmd_putval.c: Fix multi-value PUTVAL.
Florian Forster [Fri, 12 May 2017 10:08:55 +0000 (12:08 +0200)]
src/utils_cmd_putval.c: Fix multi-value PUTVAL.
vl.values was allocated outside of the loop and then copied into each
ret_putval->vl[]. This means that later values overwrote the values
stored in previous ret_putval->vl[].