Merge pull request #1595 from rubenk/turbostat-fix-shadowing-issue
Turbostat: fix shadowing issue
Turbostat: fix shadowing issue
Merge pull request #1594 from rubenk/ceph-fix-shadowing-issue
Ceph: fix shadowing issue
Ceph: fix shadowing issue
Merge branch 'collectd-5.4' into collectd-5.5
Turbostat: fix shadowing issue
turbostat.c: In function ‘delta_thread’:
turbostat.c:460:26: error: declaration of ‘core_delta’ shadows a global
declaration [-Werror=shadow]
const struct core_data *core_delta)
^~~~~~~~~~
turbostat.c:163:4: note: shadowed declaration is here
} *core_delta, *core_even, *core_odd;
^~~~~~~~~~
turbostat.c: In function ‘delta_thread’:
turbostat.c:460:26: error: declaration of ‘core_delta’ shadows a global
declaration [-Werror=shadow]
const struct core_data *core_delta)
^~~~~~~~~~
turbostat.c:163:4: note: shadowed declaration is here
} *core_delta, *core_even, *core_odd;
^~~~~~~~~~
Ceph: fix shadowing issue
Merge pull request #1584 from rubenk/fix-wrong-logical-op
utils_avltree.c: fix compiler warning
utils_avltree.c: fix compiler warning
Merge branch 'collectd-5.4' into collectd-5.5
Merge branch 'Wshadow' into collectd-5.4
Define _DEFAULT_SOURCE in addition to _BSD_SOURCE
This enables forward compatibility with the ongoing
deprecation of _BSD_SOURCE.
(cherry picked from commit 3bc1a46bebfa53ec0f0e12d6406ca126a3ad6bf3)
This enables forward compatibility with the ongoing
deprecation of _BSD_SOURCE.
(cherry picked from commit 3bc1a46bebfa53ec0f0e12d6406ca126a3ad6bf3)
Fix memory leak in redis.c
Fix a few issues found by -Wshadow
utils_avltree.c: fix compiler warning
make[3]: Entering directory '/home/ruben/src/collectd/src/daemon'
CC utils_avltree.lo
utils_avltree.c: In function ‘rebalance’:
utils_avltree.c:248:20: warning: logical ‘or’ of collectively exhaustive
tests is always true [-Wlogical-op]
assert ((b_bottom >= -1) || (b_bottom <= 1));
^~
utils_avltree.c:258:20: warning: logical ‘or’ of collectively exhaustive
tests is always true [-Wlogical-op]
assert ((b_bottom >= -1) || (b_bottom <= 1));
^~
make[3]: Entering directory '/home/ruben/src/collectd/src/daemon'
CC utils_avltree.lo
utils_avltree.c: In function ‘rebalance’:
utils_avltree.c:248:20: warning: logical ‘or’ of collectively exhaustive
tests is always true [-Wlogical-op]
assert ((b_bottom >= -1) || (b_bottom <= 1));
^~
utils_avltree.c:258:20: warning: logical ‘or’ of collectively exhaustive
tests is always true [-Wlogical-op]
assert ((b_bottom >= -1) || (b_bottom <= 1));
^~
write_sensu: define _GNU_SOURCE for asprintf
On Linux, asprintf and vasprintf are only available when _GNU_SOURCE is defined.
On Linux, asprintf and vasprintf are only available when _GNU_SOURCE is defined.
write_sensu: remove custom asprintf implementation
This was guarded by HAVE_ASPRINTF, but we never had a configure check
for asprintf (or vasprintf).
This only turned up when I made the function static, since they now
clash with the prototypes in stdio.h on FreeBSD.
As far as I know all the platforms we build on have these functions.
If this turns out to be not the case, we can always add compat functions
to our utilies later.
For now, this fixes the build on FreeBSD.
This was guarded by HAVE_ASPRINTF, but we never had a configure check
for asprintf (or vasprintf).
This only turned up when I made the function static, since they now
clash with the prototypes in stdio.h on FreeBSD.
As far as I know all the platforms we build on have these functions.
If this turns out to be not the case, we can always add compat functions
to our utilies later.
For now, this fixes the build on FreeBSD.
write_riemann: add new header to Makefile.am
Fixes 'make distcheck'
Fixes 'make distcheck'
write_sensu: mark asprintf as static
Commit straigh to 5.5. This plugin didn't exist in 5.4.
Commit straigh to 5.5. This plugin didn't exist in 5.4.
write_sensu: mark vasprintf as static
Commit straight to 5.5. This plugin didn't exist in 5.4
Commit straight to 5.5. This plugin didn't exist in 5.4
write_riemann: move prototype to header file
redis: mark redis_handle_query as static
Commit straight to 5.5. This plugin didn't exist in 5.4.
Commit straight to 5.5. This plugin didn't exist in 5.4.
redis: mark redis_handle_info as static
Commit straight to 5.5. This plugin didn't exist in 5.4.
Commit straight to 5.5. This plugin didn't exist in 5.4.
barometer: mark Detect_sensor_type as static
Make function start with lowercase 'd' while we're at it.
Commit straight to 5.5.
Make function start with lowercase 'd' while we're at it.
Commit straight to 5.5.
collectd.c: mark notify_systemd as static
Commit straight to 5.5. This function didn't exist in 5.4.
Commit straight to 5.5. This function didn't exist in 5.4.
collectd.c: mark notify_upstart as static
Commit straight to 5.5. This function didn't exist in 5.4.
Commit straight to 5.5. This function didn't exist in 5.4.
sensu: mark replace_str as static
Commit straight to 5.5. This plugin doesn't exist in 5.4
Commit straight to 5.5. This plugin doesn't exist in 5.4
sensu: mark sensu_format_name2 as static
Commit straight to 5.5, this plugin doesn't exist in 5.4
Commit straight to 5.5, this plugin doesn't exist in 5.4
Fix prototype of uc_get_size
Commit straight to 5.5, this function doesn't exist in 5.4.
Commit straight to 5.5, this function doesn't exist in 5.4.
Fix prototype of plugin_log_available_writers
Commit straight to 5.5, this function doesn't exist in 5.4
Commit straight to 5.5, this function doesn't exist in 5.4
Merge branch 'collectd-5.4' into collectd-5.5
Merge pull request #1582 from rubenk/missing-prototypes
Missing prototypes
Missing prototypes
xmms: mark cxmms_read as static
sensors: mark sensors_free_features as static
processes: mark ps_read_process as static
utils_db_query.c: make udb_query_free_one static
battery: mark dict_get_double as static
types_list.c: add header for prototypes
utils_subst.c: add header for prototypes
utils_random.c: add header for prototypes
utils_cmd_getval.c: add header for prototypes
utils_cmd_flush.c: add header for prototypes
threshold.c: mark ut_config as static
latency_counter_create: fix signature
utils_latency.c: mark change_bin_width as static
utils_cmd_putval.c: include header for prototypes
Include header for prototype of handle_putnotif
Add prototype for module_register
liboconfig: mark oconfig_free_all as static
Merge branch 'collectd-5.4' into collectd-5.5
Merge branch 'collectd-5.4' into collectd-5.5
redis: change expired_keys type from GAUGE to DERIVE
Thanks for @falzm for pointing this out in #1483 !
Thanks for @falzm for pointing this out in #1483 !
configure.ac: fix path when testing for liboconfig/parser.c presence
processes: use long for pids on linux and solaris
Up to now, we had a mix of `int`, `long` and `pid_t` to represent the
variable part of `/proc/<PID>/status` and friends. This patch
standardizes on `long` on the Linux and Solaris platforms.
The max size of `int` is smaller than the maximum number of processes
current kernels support. `pid_t` is used to ensure portability of
functions such as `getpid()`, which aren't used in this plugin, and
apparently resolves to an `int` on Solaris.
This is a follow up to bb978c1, which triggered a format string issue on
solaris 64 bit.
Up to now, we had a mix of `int`, `long` and `pid_t` to represent the
variable part of `/proc/<PID>/status` and friends. This patch
standardizes on `long` on the Linux and Solaris platforms.
The max size of `int` is smaller than the maximum number of processes
current kernels support. `pid_t` is used to ensure portability of
functions such as `getpid()`, which aren't used in this plugin, and
apparently resolves to an `int` on Solaris.
This is a follow up to bb978c1, which triggered a format string issue on
solaris 64 bit.
Move unversioned .so to -devel subpackage
Replace traffic with interface in man page
The traffic plugin was renamed a long time ago.
The traffic plugin was renamed a long time ago.
Merge branch 'collectd-5.4' into collectd-5.5
Merge pull request #1570 from rubenk/detect-bison
configure.ac: detect bison
configure.ac: detect bison
Merge pull request #1567 from rubenk/fix-typo-in-config
Fix typo in collectd.conf
Fix typo in collectd.conf
Merge pull request #1506 from mfournier/apache-content-type-1170
apache: warn about possible misconfiguration
apache: warn about possible misconfiguration
Merge pull request #1561 from mfournier/modbus-set-debug
modbus: avoid enabling libmodbus's debug flag by default
modbus: avoid enabling libmodbus's debug flag by default
configure.ac: detect bison
We use some bison-specific extensions so we really need bison, not yacc.
This has bitten a few people before, so make it easier for them.
Bison is only needed when compiling from git, since we ship the generated file
in the tarball. We take this into account by checking for the generated file first.
We use some bison-specific extensions so we really need bison, not yacc.
This has bitten a few people before, so make it easier for them.
Bison is only needed when compiling from git, since we ship the generated file
in the tarball. We take this into account by checking for the generated file first.
Fix typo in collectd.conf
modbus: avoid enabling libmodbus's debug flag by default
Having this enabled makes collectd's stdout and stderr very noisy. From
now on, only activate this flag when collectd is built with
--enable-debug.
Thanks to Eric Sandeen for mentioning this problem on IRC.
Having this enabled makes collectd's stdout and stderr very noisy. From
now on, only activate this flag when collectd is built with
--enable-debug.
Thanks to Eric Sandeen for mentioning this problem on IRC.
Merge branch 'collectd-5.4' into collectd-5.5
Merge pull request #1540 from mfournier/write_sensu_segfault_fix
write_sensu: avoid calling strlen() on variable set to NULL
write_sensu: avoid calling strlen() on variable set to NULL
RPM specfile: re-enable varnish plugin on EL7
... as the collectd-5.5 line now supports the varnish 4 API.
... as the collectd-5.5 line now supports the varnish 4 API.
write_sensu: avoid calling strlen() on variable set to NULL
This fixes a segfault when no `Tag` option is set.
This fixes a segfault when no `Tag` option is set.
Fix the addres of the Free Software Foundation
Revert "Revert "openvpn plugin: Fix "Dead assignment" warning.""
This reverts commit b40a0ef00b49cbc4d828ca2cd928c98dd27834c0.
This reverts commit b40a0ef00b49cbc4d828ca2cd928c98dd27834c0.
Merge branch 'collectd-5.4' into collectd-5.5
turbostat: fix whitespaces in log messages
Don't divide by 0 when doing percentages (e.g. with the swap plugin).
Prior to this change, if all the values being sent sum to zero, then the
calculated percentage is a division by 0 which is either Inf or NaN
depending on the numerator.
This is not a theoretical concern: it can easily happen if all the input
gauges are 0.
This change forces the output to be zero if the denominator is zero.
Prior to this change, if all the values being sent sum to zero, then the
calculated percentage is a division by 0 which is either Inf or NaN
depending on the numerator.
This is not a theoretical concern: it can easily happen if all the input
gauges are 0.
This change forces the output to be zero if the denominator is zero.
Provide a unified signature for ps_get_cmdline.
Prior to this change, ps_get_cmdline had different signatures for
KERNEL_LINUX vs. KERNEL_SOLARIS. This means that callers who want to
call this function would have to have an #if..#else that controlled which
variant of the function to call.
By giving them the same signature, callers don't have to worry about
that.
Prior to this change, ps_get_cmdline had different signatures for
KERNEL_LINUX vs. KERNEL_SOLARIS. This means that callers who want to
call this function would have to have an #if..#else that controlled which
variant of the function to call.
By giving them the same signature, callers don't have to worry about
that.
The field 're' only exists if HAVE_REGEX_H is defined (see definition at
line 194). So, consistent with all other usages, this should be protected
with an #if guard.
line 194). So, consistent with all other usages, this should be protected
with an #if guard.
Revert "openvpn plugin: Fix "Dead assignment" warning."
I cherry-picked this patch, but overlooked the fact it relates to
another change (c339d93f) only found in the collectd-5.5 branch.
Reverting, as it results in a compilation error.
This reverts commit b7f9a3c02d885e0fbe8fb7aac5c9a51b5771a9d3.
I cherry-picked this patch, but overlooked the fact it relates to
another change (c339d93f) only found in the collectd-5.5 branch.
Reverting, as it results in a compilation error.
This reverts commit b7f9a3c02d885e0fbe8fb7aac5c9a51b5771a9d3.
Merge branch 'collectd-5.4' into collectd-5.5
drbd plugin: improve header lines identification
Recent DRBD versions display more detailed build information in
`/proc/drbd`, which caused the header identification to fail.
Comparing the first part of each line against all known header prefixes
will hopefully make this more robust.
Fixes #1514
Signed-off-by: Florian Forster <octo@collectd.org>
Recent DRBD versions display more detailed build information in
`/proc/drbd`, which caused the header identification to fail.
Comparing the first part of each line against all known header prefixes
will hopefully make this more robust.
Fixes #1514
Signed-off-by: Florian Forster <octo@collectd.org>
df: remove legacy code skipping "rootfs" monitoring
3512bb1 added code to skip duplicate reporting of `rootfs` mounted on `/`.
f9c1c5b and f0398d0 added generic code to skip any volume mounted twice.
Depending on the order of the entries in `/etc/mtab`, reporting for `/` was
entirely skipped.
This patch basically reverts the first, non-generic patch, as it's
superseded by the 2 others.
Fixes #1402
Signed-off-by: Florian Forster <octo@collectd.org>
3512bb1 added code to skip duplicate reporting of `rootfs` mounted on `/`.
f9c1c5b and f0398d0 added generic code to skip any volume mounted twice.
Depending on the order of the entries in `/etc/mtab`, reporting for `/` was
entirely skipped.
This patch basically reverts the first, non-generic patch, as it's
superseded by the 2 others.
Fixes #1402
Signed-off-by: Florian Forster <octo@collectd.org>
ChangeLog: Fix mangled entries.
Bump version to 5.5.1; Update ChangeLog.
Merge pull request #1517 from mfournier/systemd-upstart-build-issue
systemd.collectd.service: improve systemd & capabilities explanations
systemd.collectd.service: improve systemd & capabilities explanations
docs: Add info about mode7 requirement for ntpd
Since ntpd-4.2.7p230 "mode 7" requests are ignored by default, and
that's what ntpd plugin uses currently. The ntp daemon must be
explicitly configured to enable mode7 requests.
This patch adds short information about that to collectd.conf manpage.
Related to collectd/collectd#932
Signed-off-by: Jakub Jankowski <shasta@toxcorp.com>
Since ntpd-4.2.7p230 "mode 7" requests are ignored by default, and
that's what ntpd plugin uses currently. The ntp daemon must be
explicitly configured to enable mode7 requests.
This patch adds short information about that to collectd.conf manpage.
Related to collectd/collectd#932
Signed-off-by: Jakub Jankowski <shasta@toxcorp.com>
Merge branch 'collectd-5.4' into collectd-5.5
docs: mention regexps for the interface plugin
It is very useful to collect data (or ignore) from a group of interfaces
that are similarly named - especially if the list is dynamic and it's
not feasible to update configuration each time an interface shows up or
disappears. It's possible to use regexps to specify interfaces to
collect data from (or ignore), but it's not clearly stated anywhere in
the documentation.
This is an attempt to improve documentation in this area.
Signed-off-by: Jakub Jankowski <shasta@toxcorp.com>
It is very useful to collect data (or ignore) from a group of interfaces
that are similarly named - especially if the list is dynamic and it's
not feasible to update configuration each time an interface shows up or
disappears. It's possible to use regexps to specify interfaces to
collect data from (or ignore), but it's not clearly stated anywhere in
the documentation.
This is an attempt to improve documentation in this area.
Signed-off-by: Jakub Jankowski <shasta@toxcorp.com>
systemd.collectd.service: improve systemd & capabilities explanations
Fixes #1444
Fixes #1444
exec plugin: Revert file mode to 0644.
This fixes a regression from 94e562250296b1435e3e48cd302055d89c4c702b.
This fixes a regression from 94e562250296b1435e3e48cd302055d89c4c702b.
virt plugin: make indentation explicit
Fixes this warning raised by gcc-6's new "misleading-indentation"
option:
```
virt.c: In function 'lv_init':
virt.c:331:2: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
return 0;
^~~~~~
virt.c:328:5: note: ...this 'if' clause, but it is not
if (virInitialize () != 0)
^~
```
Fixes this warning raised by gcc-6's new "misleading-indentation"
option:
```
virt.c: In function 'lv_init':
virt.c:331:2: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
return 0;
^~~~~~
virt.c:328:5: note: ...this 'if' clause, but it is not
if (virInitialize () != 0)
^~
```
df: remove legacy references to ReportReserved
The ReportReserved option was removed in fcb3cbf. This patch cleans up a
couple of references which got left behind.
The ReportReserved option was removed in fcb3cbf. This patch cleans up a
couple of references which got left behind.
Merge branch 'collectd-5.4' into collectd-5.5
write_redis: don't return with lock held
src/utils_latency.c: Fix format string error.
src/utils_latency.c: Ensure that LLONG_MAX is defined.
EPEL5 doesn't have it in <limits.h> apparently.
EPEL5 doesn't have it in <limits.h> apparently.
src/utils_latency.c: Store "bin_width" as cdtime_t.
This solves the integer overflow when passing huge latency values to
latency_counter_add(). In addition to fixing the overflow the function
will now ignore values that are larger than LLONG_MAX, i.e. the longest
possible latency is 272 years. As a nice side-effect, the precission of
latency_counter_get_percentile() is improved.
Issue: #1131
This solves the integer overflow when passing huge latency values to
latency_counter_add(). In addition to fixing the overflow the function
will now ignore values that are larger than LLONG_MAX, i.e. the longest
possible latency is 272 years. As a nice side-effect, the precission of
latency_counter_get_percentile() is improved.
Issue: #1131
src/utils_latency.c: Fix change_bin_width().
A missing cast when calculating "width_change_ratio" caused all metrics to
be moved to bucket #0.
A missing cast when calculating "width_change_ratio" caused all metrics to
be moved to bucket #0.
varnish: fix leak on read
Since VSM_Close doesn't free the object we leak a few bytes
every interval
Since VSM_Close doesn't free the object we leak a few bytes
every interval
openvpn plugin: Fix "Dead assignment" warning.
modbus plugin: Make sure variable is initialized.
This was introduced by the merge
(09c6a320f3cb36b5dbb2c2ce43858f33be7acf9b).
This was introduced by the merge
(09c6a320f3cb36b5dbb2c2ce43858f33be7acf9b).
tail plugin: Make sure variable is initialized.
This was introduced by the merge
(09c6a320f3cb36b5dbb2c2ce43858f33be7acf9b).
This was introduced by the merge
(09c6a320f3cb36b5dbb2c2ce43858f33be7acf9b).
Fix header condition
The dependency is either UTMPX or UTMP or Statgrab. The inclusion above hasn't statgrab.h in the elif-chain, that means compilation fails when only libstatgrab is available. The line can safely be taken out as the same condition is checked in #L120.
The dependency is either UTMPX or UTMP or Statgrab. The inclusion above hasn't statgrab.h in the elif-chain, that means compilation fails when only libstatgrab is available. The line can safely be taken out as the same condition is checked in #L120.
Fixed rrdtool sigsegv (datadir==NULL ptr dereferencing)
processes: correct a typo