Pavel Rochnyack [Wed, 19 Dec 2018 12:57:04 +0000 (19:57 +0700)]
processes: Fix 'delay_rate' race condition
When ts_delay_by_tgid() failed (for example, when observable process
terminates), `ps->delay` fields are not updated and remain set to zero.
This interpreted as counter overflow and produces spike.
Issue: #3026
Ruben Kerkhof [Tue, 18 Dec 2018 17:54:35 +0000 (18:54 +0100)]
collectd.conf(5): finish a sentence
Ruben Kerkhof [Tue, 18 Dec 2018 17:52:08 +0000 (18:52 +0100)]
collectd.conf(5): fix a few typos
Ruben Kerkhof [Sun, 16 Dec 2018 19:16:59 +0000 (20:16 +0100)]
Rewrite configure check for CUDA
It had a bunch of issues, one of them that it touched CFLAGS, the other
that it didn't use CUDA_CFLAGS.
The check is still too simple, we need to check if we can actually use
the library instead of just the header.
Ruben Kerkhof [Sun, 16 Dec 2018 14:11:02 +0000 (15:11 +0100)]
Treewide: do NUL-termination correctly
This is purely cosmetic but still, it sets a good example
Ruben Kerkhof [Sun, 16 Dec 2018 13:04:04 +0000 (14:04 +0100)]
Fix build
lookup_identifier_t has a few array members.
To zero-initialize these we need a pair of extra braces.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80454
Ruben Kerkhof [Sun, 16 Dec 2018 12:40:53 +0000 (13:40 +0100)]
Fix a couple of warnings in test suite
src/utils_vl_lookup_test.c: In function ‘checked_lookup_add’:
src/utils_vl_lookup_test.c:91:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(ident.host, host, sizeof(ident.host));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:92:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(ident.plugin, plugin, sizeof(ident.plugin));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:93:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(ident.plugin_instance, plugin_instance,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sizeof(ident.plugin_instance));
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:95:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(ident.type, type, sizeof(ident.type));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:96:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(ident.type_instance, type_instance, sizeof(ident.type_instance));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c: In function ‘checked_lookup_search’:
src/utils_vl_lookup_test.c:113:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(vl.host, host, sizeof(vl.host));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:114:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(vl.plugin, plugin, sizeof(vl.plugin));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:115:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(vl.plugin_instance, plugin_instance, sizeof(vl.plugin_instance));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:116:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(vl.type, type, sizeof(vl.type));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/utils_vl_lookup_test.c:117:3: warning: ‘strncpy’ specified bound 128 equals destination size [-Wstringop-truncation]
strncpy(vl.type_instance, type_instance, sizeof(vl.type_instance));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CCLD test_utils_vl_lookup
Ruben Kerkhof [Sun, 16 Dec 2018 12:36:51 +0000 (13:36 +0100)]
Ignore test-suite.log in all directories
Florian Forster [Sun, 16 Dec 2018 07:33:39 +0000 (08:33 +0100)]
Merge pull request #3022 from rubenk/treewide-fix-some-style-issues
Treewide: fix some style issues
Ruben Kerkhof [Sat, 15 Dec 2018 18:35:42 +0000 (19:35 +0100)]
xencpu plugin: fix minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 18:26:04 +0000 (19:26 +0100)]
virt plugin: fix some minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 18:20:43 +0000 (19:20 +0100)]
utils_rrdcreate.c: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 18:17:16 +0000 (19:17 +0100)]
utils_ovs.c: fix some minor stylistic issues
Ruben Kerkhof [Sat, 15 Dec 2018 18:07:56 +0000 (19:07 +0100)]
utils_db_query.c: fix some minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 18:01:41 +0000 (19:01 +0100)]
snmp_agent plugin: fix minor nit
Ruben Kerkhof [Sat, 15 Dec 2018 17:57:17 +0000 (18:57 +0100)]
postgresql plugin: fix some stylistic issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:53:24 +0000 (18:53 +0100)]
ovs_stats plugin: fix some stylistic issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:50:18 +0000 (18:50 +0100)]
oracle plugin: remove unneccesary cast
Ruben Kerkhof [Sat, 15 Dec 2018 17:47:13 +0000 (18:47 +0100)]
liboconfig: fix minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:44:40 +0000 (18:44 +0100)]
libcollectdclient: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:42:59 +0000 (18:42 +0100)]
java plugin: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:41:58 +0000 (18:41 +0100)]
ipmi plugin: remove unneccesary cast
Ruben Kerkhof [Sat, 15 Dec 2018 17:38:00 +0000 (18:38 +0100)]
intel_rdt plugin: fix some minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:36:36 +0000 (18:36 +0100)]
intel_pmu plugin: fix some minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:33:00 +0000 (18:33 +0100)]
gmond plugin: fix minor style issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:29:29 +0000 (18:29 +0100)]
disk plugin: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:26:37 +0000 (18:26 +0100)]
daemon/utils_cache.c: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:23:55 +0000 (18:23 +0100)]
daemon/types_list.c: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:22:30 +0000 (18:22 +0100)]
daemon/plugin.c: fix two more stylistic issues
Ruben Kerkhof [Sat, 15 Dec 2018 17:21:18 +0000 (18:21 +0100)]
daemon/plugin.c: remove unneccesary casts
Ruben Kerkhof [Sat, 15 Dec 2018 17:18:26 +0000 (18:18 +0100)]
daemon/plugin.c: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:13:42 +0000 (18:13 +0100)]
cpufreq plugin: fix minor style issue
Ruben Kerkhof [Sat, 15 Dec 2018 17:08:36 +0000 (18:08 +0100)]
barometer plugin: remove unneccesary cast
Ruben Kerkhof [Fri, 14 Dec 2018 18:15:07 +0000 (19:15 +0100)]
collectd-nagios: remove unneccesary casts
Ruben Kerkhof [Fri, 14 Dec 2018 18:13:15 +0000 (19:13 +0100)]
ceph plugin: use recommended style for calloc
Pavel Rochnyak [Thu, 6 Dec 2018 16:59:36 +0000 (23:59 +0700)]
Merge pull request #3015 from bluca/dpdk_pkgconfig
configure.ac: run dpdk build tests only if pkgconfig fails
Luca Boccassi [Mon, 3 Dec 2018 15:56:13 +0000 (15:56 +0000)]
configure.ac: run dpdk build tests only if pkgconfig fails
The AC_CHECK_LIB test runs unconditionally, and fails with DPDK 18.11
when built with Meson as there is no longer a libdpdk.so linker script,
but only a pkg-config file, so -ldpdk (which is what AC_CHECK_LIB runs)
fails.
Use AC_LINK_IFELSE instead, with compiler and linker flags set
appropriately.
Signed-off-by: Luca Boccassi <bluca@debian.org>
Pavel Rochnyack [Wed, 5 Dec 2018 09:19:53 +0000 (16:19 +0700)]
virt plugin: Add missing config_keys
Pavel Rochnyack [Wed, 5 Dec 2018 07:29:31 +0000 (14:29 +0700)]
virt plugin: New options: ReportBlockDevices and ReportNetworkInterfaces
This allows to disable unneeded reports if stats are gathered by another plugin.
Pavel Rochnyack [Wed, 5 Dec 2018 06:52:47 +0000 (13:52 +0700)]
virt plugin: Move adding of devices into own functions
This also covers case when error while adding block device
refuse adding of domain network devices.
Pavel Rochnyack [Wed, 5 Dec 2018 06:28:30 +0000 (13:28 +0700)]
virt plugin: Fixed mistake in variable rename
Pavel Rochnyack [Wed, 5 Dec 2018 06:11:12 +0000 (13:11 +0700)]
virt plugin: Handle ignorelists properly
Added check for ignorelist_create() success.
Removed unnecessary "not null" checks in rest of code.
Pavel Rochnyack [Tue, 4 Dec 2018 17:20:36 +0000 (00:20 +0700)]
virt plugin: Updated InterfaceFormat documentation
Pavel Rochnyak [Tue, 4 Dec 2018 08:54:44 +0000 (15:54 +0700)]
Merge pull request #3014 from rpv-tomsk/collectd-master
sensors plugin: Drop support for libsensors older than 3.0.0
Pavel Rochnyak [Mon, 3 Dec 2018 18:13:12 +0000 (01:13 +0700)]
Merge pull request #3000 from teknoraver/master
Add ovs-dpdk extended metrics
Matteo Croce [Mon, 3 Dec 2018 17:21:03 +0000 (18:21 +0100)]
indent with contrib/format.sh
Matteo Croce [Mon, 3 Dec 2018 17:17:01 +0000 (18:17 +0100)]
Add ovs-dpdk extended metrics
Signed-off-by: Matteo Croce <mcroce@redhat.com>
Signed-off-by: Ryan McCabe <rmccabe@redhat.com>
Pavel Rochnyack [Mon, 3 Dec 2018 11:56:39 +0000 (18:56 +0700)]
sensors plugin: Drop support for libsensors older than 3.0.0
The lm_sensors-3.0.0, which introduces 'modern' API, released 2007-11-24.
The time came to drop older version support.
Pavel Rochnyack [Mon, 3 Dec 2018 11:34:14 +0000 (18:34 +0700)]
sensors: Removed checks for upper limit of SENSORS_API_VERSION
That makes no more sense after lm-sensors got new maintainers.
Issue: #3006
Pavel Rochnyak [Mon, 3 Dec 2018 11:27:18 +0000 (18:27 +0700)]
Merge pull request #3012 from rpv-tomsk/collectd-master
ovs_stats: Cleanup and improve
Pavel Rochnyack [Mon, 3 Dec 2018 10:38:17 +0000 (17:38 +0700)]
ovs_stats: Optimize read callback
Pavel Rochnyack [Mon, 3 Dec 2018 10:29:27 +0000 (17:29 +0700)]
ovs_stats: Do not create bridge if it has not be monitored.
Pavel Rochnyack [Mon, 3 Dec 2018 10:16:17 +0000 (17:16 +0700)]
ovs_stats: Fix indent
Pavel Rochnyack [Mon, 3 Dec 2018 10:10:23 +0000 (17:10 +0700)]
ovs_stats: Locking reworked
Locking now done in unified way, on top-level.
That removes usage of global variables in unprotected way.
Pavel Rochnyack [Mon, 3 Dec 2018 09:32:29 +0000 (16:32 +0700)]
ovs_stats: Do not create ports if there is no bridge name
That has no sence, as it will not pass condition in ovs_stats_plugin_read()
Pavel Rochnyak [Mon, 3 Dec 2018 06:52:44 +0000 (13:52 +0700)]
Merge pull request #3011 from rpv-tomsk/collectd-master
ovs_stats: Code style and cleanup
Pavel Rochnyack [Mon, 3 Dec 2018 06:45:16 +0000 (13:45 +0700)]
ovs_stats: Removed unused variable
Pavel Rochnyack [Mon, 3 Dec 2018 06:44:36 +0000 (13:44 +0700)]
ovs_stats: Fix indents
Pavel Rochnyak [Mon, 3 Dec 2018 05:49:18 +0000 (12:49 +0700)]
Merge pull request #2880 from abays/add_ovs_stats_bonds_3
ovs_stats bonds support with separate interface stats
Pavel Rochnyack [Sun, 2 Dec 2018 19:48:08 +0000 (02:48 +0700)]
write_mongodb: Fix plugin dependencies
Issue: #2900
Pavel Rochnyack [Sun, 2 Dec 2018 18:45:11 +0000 (01:45 +0700)]
Fix merge issue
Pavel Rochnyak [Sun, 2 Dec 2018 18:42:32 +0000 (01:42 +0700)]
Merge pull request #2807 from sileht/master
virt: allow read Hostname from libvirt metadata
Pavel Rochnyack [Sun, 2 Dec 2018 18:34:16 +0000 (01:34 +0700)]
virt: Fix indent
Pavel Rochnyack [Sun, 2 Dec 2018 18:24:36 +0000 (01:24 +0700)]
virt: Merge changes from master to resolve conflict
Pavel Rochnyak [Sun, 2 Dec 2018 17:59:08 +0000 (00:59 +0700)]
Merge pull request #2990 from rpv-tomsk/collectd-master
virt plugin: Document Instances option
Mehdi Abaakouk [Tue, 5 Jun 2018 14:09:30 +0000 (16:09 +0200)]
virt: allow read Hostname from libvirt metadata
This change allows to read Hostname from Libvirt metadata API.
Applications like OVirt or Openstack Nova uses this metadata API to
store additional informations like the 'user facing' Guest name.
To do so, a new choice 'metadata' is added for 'HostnameFormat' and
'PluginInstanceFormat'. And two new options are also added to localize
the hostname into the Guest metadata: HostnameMetadataNS and
HostnameMetadataXPath.
Closes: #2805
Andrew Bays [Mon, 19 Nov 2018 14:31:51 +0000 (09:31 -0500)]
Small snprintf optimization
Andrew Bays [Mon, 19 Nov 2018 13:50:59 +0000 (08:50 -0500)]
Merge branch 'master' into add_ovs_stats_bonds_3
Andrew Bays [Mon, 19 Nov 2018 13:29:56 +0000 (08:29 -0500)]
Document InterfaceStats option for ovs_stats plugin
Pavel Rochnyack [Thu, 8 Nov 2018 08:14:02 +0000 (15:14 +0700)]
virt plugin: Document Instances option
Documented implementation from
452324c4a5b6ec07575cfc5d5d339852b040509b
Florian Forster [Mon, 5 Nov 2018 21:42:49 +0000 (22:42 +0100)]
Merge pull request #2976 from luisfdez/feat/set-ok
Add a new UNKNOWN state as the initial state of metrics
trenkel [Thu, 1 Nov 2018 12:35:31 +0000 (13:35 +0100)]
Merge pull request #2985 from tylerharper/master
add Import configuration option to collectd-python documentation
Tyler Harper [Thu, 1 Nov 2018 12:01:22 +0000 (08:01 -0400)]
add Import configuration option to collectd-python documentation
Florian Forster [Wed, 31 Oct 2018 10:18:18 +0000 (11:18 +0100)]
Merge pull request #2551 from klnikita/reset_disk_linux
disk plugin: reset the disk when it disappear from /proc/diskstats (Linux only)
Pavel Rochnyack [Wed, 31 Oct 2018 03:14:03 +0000 (10:14 +0700)]
disk plugin: Updated after review
Pavel Rochnyack [Tue, 30 Oct 2018 17:56:53 +0000 (00:56 +0700)]
disk plugin: Review #2551
Nikita Kozlov [Tue, 14 Nov 2017 20:48:53 +0000 (21:48 +0100)]
disk: in linux, reset the disk when it disappear from diskstats
If you don't reset the diskstats_t for a given diskname when it
disappear and the disk name is reused later (for exemple an iSCSI disk)
The "disk" plugin detect an int overflow because linux /proc/diskstats are
reseted to 0 for that diskname and the plugin send incorrect stats for
the new disk.
Pavel Rochnyack [Tue, 30 Oct 2018 16:14:30 +0000 (23:14 +0700)]
contrib/docker: Install all recommended packages
Closes: #2974
Closes: #2973
Pavel Rochnyack [Tue, 30 Oct 2018 14:53:11 +0000 (21:53 +0700)]
disk plugin: Fix regression after #2955 (Drop support for Linux 2.4)
Issue: #2955
Luis Fernández Álvarez [Wed, 24 Oct 2018 13:49:35 +0000 (15:49 +0200)]
Add a new UNKNOWN state as the initial state of metrics
* UNKNOWN becomes the default state of the metrics.
* States are renumbered so UNKNOWN is lower than OKAY and the threshold
evaluation logic is consistent.
* If an invalid datasource is set in a threshold it will resolve to
UNKNOWN.
Pavel Rochnyack [Sat, 27 Oct 2018 17:02:22 +0000 (00:02 +0700)]
cpufreq plugin: Limit reported value of percent to 100.1
cat /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state \
; sleep 10 ; cat /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
2664000 463368
1998000 59724070
2664000 463385
1998000 59725054
The sum of counters change is 1001, which produces reported value near
to 100.1%. I got calculated ds[0] = 100.100053 and such value produces gap on
charts.
Added limit to avoid such.
Pavel Rochnyak [Sat, 27 Oct 2018 14:23:52 +0000 (21:23 +0700)]
Merge pull request #2627 from pllopis/turbostat_fixes
turbostat plugin: add RestoreAffinityPolicy parameter
Pavel Rochnyack [Sat, 27 Oct 2018 13:16:38 +0000 (20:16 +0700)]
turbostat plugin: Polished RestoreAffinityPolicy option
Pablo Llopis [Tue, 13 Mar 2018 10:55:06 +0000 (11:55 +0100)]
turbostat plugin: add new setting `RestoreAffinityPolicy`
This new setting controls how the affinity is restored during
turbostat_read(). Two policies are implemented: AffinityRestore, and
AffinityAllCPUs. The default policy, AffinityRestore, behaves exactly
the same as before, which is to save affinity and to later restore it.
The second policy, RestoreAllCPUs, skips saving the affinity and
sets the affinity to all CPUs after each read. This second policy is
useful for systems where sched_getaffinity() fails and prevents data
collection.
Pablo Llopis [Fri, 15 Dec 2017 14:58:22 +0000 (15:58 +0100)]
formatting fixes
Pablo Llopis [Fri, 15 Dec 2017 13:57:33 +0000 (14:57 +0100)]
Increase turbostat_read() resiliency when sched_getaffinity() fails
Pavel Rochnyack [Sat, 27 Oct 2018 10:02:57 +0000 (17:02 +0700)]
Request kernel version in reported issues
Florian Forster [Sat, 27 Oct 2018 08:53:12 +0000 (10:53 +0200)]
Merge pull request #2979 from rpv-tomsk/collectd-master
swap plugin: Drop support for Linux 2.4.
Pavel Rochnyack [Sat, 27 Oct 2018 07:57:11 +0000 (14:57 +0700)]
swap plugin: Drop support for Linux 2.4.
Related: #2955
Pavel Rochnyak [Sat, 27 Oct 2018 07:56:47 +0000 (14:56 +0700)]
Merge pull request #2978 from rpv-tomsk/collectd-master
virt plugin: Cleanup
Pavel Rochnyack [Sat, 27 Oct 2018 07:36:55 +0000 (14:36 +0700)]
virt plugin: Cleanup
Florian Forster [Sat, 27 Oct 2018 07:14:25 +0000 (09:14 +0200)]
Merge pull request #2923 from qdbp/gpu_nvml_plugin
New plugin: gpu_nvidia collects NVIDIA GPU stats.
Evgeny Naumov [Fri, 26 Oct 2018 22:13:27 +0000 (18:13 -0400)]
rename plugin to "gpu_nvidia"
Pavel Rochnyack [Fri, 26 Oct 2018 17:29:52 +0000 (00:29 +0700)]
Merge branch 'collectd-5.8' into master
Conflicts:
src/disk.c
src/virt.c
Pavel Rochnyack [Fri, 26 Oct 2018 15:06:35 +0000 (22:06 +0700)]
Merge branch 'collectd-5.7' into collectd-5.8
Conflicts:
src/utils_mount.c
Florian Forster [Fri, 26 Oct 2018 06:21:45 +0000 (08:21 +0200)]
Merge pull request #2975 from octo/issue/2954
zfs_arc: Ignore the first two lines of the statistics file on Linux (5.7 cherry-pick)
Florian Forster [Fri, 26 Oct 2018 06:05:41 +0000 (08:05 +0200)]
contrib/format.sh src/zfs_arc.c
YmrDtnJu [Sat, 10 Dec 2016 00:30:59 +0000 (01:30 +0100)]
zfs_arc: Ignore the first two lines of the statistics file on Linux.
The first two lines of the statistics file on Linux contain information about
the rest of the file. They do not contain any usable statistics.
See module/spl/spl-kstat.c of the spl module of ZFS on Linux for more
information.
Florian Forster [Thu, 25 Oct 2018 18:20:46 +0000 (20:20 +0200)]
Merge pull request #2972 from rpv-tomsk/collectd-collectd-5.8
virt plugin: Remove optional virDomainGetCPUStats() from main flow
Pavel Rochnyack [Thu, 25 Oct 2018 08:44:38 +0000 (15:44 +0700)]
virt plugin: Move `get_pcpu_stats()' down to avoid forward declaration of `submit_derive2()'