Maryam Tahhan [Mon, 28 Mar 2016 11:26:03 +0000 (12:26 +0100)]
dpdkstat: enable a plugin for DPDK stats
This patch enables support to retrieve statistics for DPDK
interfaces. An overview of the threading is as follows:
1. collectd init() or read() calls dpdk_helper_spawn() to retrieve
the required size of xstats to allocate.
1.1. DPDK counts ports, stats and length, writing them to
shared-memory (SHM).
1.2. DPDK helper (secondary) process quits, allowing cleanup of
the shared memory.
2. collectd resizes shared-memory to size of stats as provided by
DPDK.
3. collectd respawns the DPDK helper.
3.1. Helper blocks on a semaphore until told to read the stats
from DPDK and write them to SHM.
4. collectd dispatches statistics
4.1. Thread blocks on semaphore until stats are available.
This threading model is required to allow the plugin to detect when
the DPDK primary process/application has been killed/reset, and to avoid
the plugin from stopping another DPDK primary process from starting.
Some extra housekeeping is in place to ensure collectd is never
stalled by using sem_timedwait() with a timeout. If collectd dies, the
helper process will automatically quit after a timeout, as it detects
its ppid has changed.
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Florian Forster [Thu, 28 Jul 2016 10:25:16 +0000 (12:25 +0200)]
Merge remote-tracking branch 'github/pr/1814'
Florian Forster [Thu, 28 Jul 2016 10:10:07 +0000 (12:10 +0200)]
empty_counter match: Code cleanup.
Florian Forster [Thu, 28 Jul 2016 10:03:43 +0000 (12:03 +0200)]
empty_counter match: Add support for the DERIVE data source type.
Fixes: #1813
Florian Forster [Thu, 28 Jul 2016 08:53:50 +0000 (10:53 +0200)]
varnish plugin: Add informative warnings to the config handling.
Not all config options are valid for all versions of Varnish. Rather
than removing the if-clause altogether, which results in a "Ignoring
unknown configuration option" warning, print a user-friendly warning
instead.
Fixes: #1790
Ruben Kerkhof [Wed, 27 Jul 2016 12:42:46 +0000 (14:42 +0200)]
Merge pull request #1806 from rubenk/network-plugin-size_t
network plugin: use size_t for length and offsets
Ruben Kerkhof [Tue, 26 Jul 2016 14:14:02 +0000 (16:14 +0200)]
write_http: fix warning in new kairos support
Found by LLVM:
comparison of integers of different signs: 'int' and 'const size_t' (aka 'const unsigned long')
Ruben Kerkhof [Tue, 26 Jul 2016 12:37:45 +0000 (14:37 +0200)]
write_http: remove superfluous braces
Ruben Kerkhof [Tue, 26 Jul 2016 12:36:44 +0000 (14:36 +0200)]
Merge pull request #1809 from beorn-/write_http_kairosdb_format_master
Add KAIROSDB format to write_http plugin
Aurelien ROUGEMONT [Wed, 27 Jan 2016 16:06:45 +0000 (17:06 +0100)]
Add KAIROSDB format to write_http plugin
Ruben Kerkhof [Tue, 26 Jul 2016 10:50:36 +0000 (12:50 +0200)]
Merge branch 'collectd-5.5'
Ruben Kerkhof [Tue, 26 Jul 2016 10:50:07 +0000 (12:50 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Conflicts:
ChangeLog
contrib/redhat/collectd.spec
version-gen.sh
Ruben Kerkhof [Tue, 26 Jul 2016 10:45:53 +0000 (12:45 +0200)]
Merge pull request #1804 from rubenk/madwifi-fix-buffer-overflow
madwifi plugin: fix buffer overflows
Aurelien ROUGEMONT [Tue, 26 Jul 2016 10:29:49 +0000 (12:29 +0200)]
metadata: add comment about metadata functions use and threads safety
Signed-off-by: Florian Forster <octo@collectd.org>
Ruben Kerkhof [Tue, 26 Jul 2016 10:26:24 +0000 (12:26 +0200)]
Bump spec file to 5.4.3
Ruben Kerkhof [Tue, 26 Jul 2016 10:20:40 +0000 (12:20 +0200)]
Update spec file to 5.5.2
(cherry picked from commit
34add34b27c6d85ed992efc951fc08994e5f86d6)
Ruben Kerkhof [Tue, 26 Jul 2016 10:20:40 +0000 (12:20 +0200)]
Update spec file to 5.5.2
Ruben Kerkhof [Tue, 26 Jul 2016 10:13:46 +0000 (12:13 +0200)]
Merge pull request #1807 from matteocontrini/master
Added 'operations_per_second' (redis) type
Florian Forster [Tue, 26 Jul 2016 07:21:19 +0000 (09:21 +0200)]
Bump version to 5.4.3; Update ChangeLog.
Florian Forster [Tue, 26 Jul 2016 06:54:42 +0000 (08:54 +0200)]
network plugin: Fix error message for GCRYCTL_INIT_SECMEM failure.
Florian Forster [Tue, 26 Jul 2016 05:56:09 +0000 (07:56 +0200)]
Merge branch 'collectd-5.5'
Florian Forster [Tue, 26 Jul 2016 05:50:55 +0000 (07:50 +0200)]
ChangeLog: Add note about #1665.
Matteo Contrini [Mon, 25 Jul 2016 22:35:13 +0000 (00:35 +0200)]
Added 'operations_per_second' (redis) type
Florian Forster [Mon, 25 Jul 2016 11:13:56 +0000 (13:13 +0200)]
Bump version to 5.5.2; Update ChangeLog.
Florian Forster [Mon, 25 Jul 2016 11:52:16 +0000 (13:52 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Florian Forster [Mon, 25 Jul 2016 11:39:37 +0000 (13:39 +0200)]
network plugin, libcollectdclient: Check return value of gcry_control().
Fixes: #1665
Ruben Kerkhof [Sun, 24 Jul 2016 19:23:59 +0000 (21:23 +0200)]
libcollectdclient: fix compiler warning on Solaris
CC libcollectdclient_la-client.lo
"client.c", line 1104: argument #4 is incompatible with prototype:
prototype: pointer to function(pointer to const void, pointer to const void) returning int : "/usr/include/iso/stdlib_iso.h", line 134
argument : pointer to void
Ruben Kerkhof [Sun, 24 Jul 2016 18:27:48 +0000 (20:27 +0200)]
utils_cache_mock: fix annotations
It's __attribute__, not __attribute
Found with Solaris lint.
Ruben Kerkhof [Sun, 24 Jul 2016 18:07:18 +0000 (20:07 +0200)]
configure.ac: fix empty else on RHEL5
Ancient autoconf versions don't like empty
strings in m4 arguments.
Ruben Kerkhof [Sun, 24 Jul 2016 17:03:29 +0000 (19:03 +0200)]
Fix build when hal is not installed
Ruben Kerkhof [Sun, 24 Jul 2016 16:43:38 +0000 (18:43 +0200)]
treewide: fix invocation of c_avl_create
Fixes the following warning on Solaris:
|c_avl_tree_t *c_avl_create (int (*compare) (const void *, const
void *));
| ^ line 54, utils_avltree.h
| included in line 34, utils_vl_lookup.c
|
| obj->by_type_tree = c_avl_create ((void *) strcmp);
| ^ line 567,
utils_vl_lookup.c
E_ARG_INCOMPATIBLE_WITH_ARG_L, argument #1 is incompatible with
prototype:
prototype: pointer to function(pointer to const void, pointer to
const void) returning int : "src/daemon/utils_avltree.h", line 54
argument : pointer to void
I'll look into writing a generic function to compare avl keys so
we don't need to do all the casting.
Ruben Kerkhof [Sun, 24 Jul 2016 16:22:32 +0000 (18:22 +0200)]
email plugin: fix lint warnings
set but not used in function
(468) err in open_connection
(574) err in email_init
Ruben Kerkhof [Sun, 24 Jul 2016 16:11:07 +0000 (18:11 +0200)]
utils_llist.c: remove unneccesary include
Ruben Kerkhof [Sun, 24 Jul 2016 16:05:22 +0000 (18:05 +0200)]
write_kafka plugin: remove unneccesary includes
Ruben Kerkhof [Sun, 24 Jul 2016 16:03:36 +0000 (18:03 +0200)]
threshold plugin: remove unneccesary include
Ruben Kerkhof [Sun, 24 Jul 2016 16:02:01 +0000 (18:02 +0200)]
mqtt plugin: remove unused include
Ruben Kerkhof [Sun, 24 Jul 2016 15:58:58 +0000 (17:58 +0200)]
battery plugin: remove unused include
Ruben Kerkhof [Sun, 24 Jul 2016 15:56:46 +0000 (17:56 +0200)]
memcachec plugin: correct error message
Ruben Kerkhof [Sun, 24 Jul 2016 15:56:04 +0000 (17:56 +0200)]
curl plugin: correct error message
Ruben Kerkhof [Sun, 24 Jul 2016 15:21:56 +0000 (17:21 +0200)]
modbus plugin: unsigned value can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 15:15:11 +0000 (17:15 +0200)]
collectd-tg: remove dead code
Ruben Kerkhof [Sun, 24 Jul 2016 15:11:46 +0000 (17:11 +0200)]
fscache plugin: unsigned value can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 14:47:40 +0000 (16:47 +0200)]
uuid plugin: fix inclusion of libhal.h
Follow up of
34db18b
Ruben Kerkhof [Sun, 24 Jul 2016 14:43:30 +0000 (16:43 +0200)]
configure.ac: always use pkg-config to detect hal
Hal needs dbus, but we need pkg-config to tell us that.
Now that pkg-config is not optional anymore, rewrite the
check to always use it. Also add a check for the header.
Fixes building the uuid plugin on Solaris 11.3
Ruben Kerkhof [Sun, 24 Jul 2016 13:31:56 +0000 (15:31 +0200)]
ganglia plugin: unsigned value can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 11:56:32 +0000 (13:56 +0200)]
treewide: remove unused includes
Ruben Kerkhof [Sun, 24 Jul 2016 11:56:32 +0000 (13:56 +0200)]
network plugin: use size_t for length and offsets
Ruben Kerkhof [Sun, 24 Jul 2016 11:55:22 +0000 (13:55 +0200)]
Ignore lint files
Ruben Kerkhof [Sun, 24 Jul 2016 11:43:48 +0000 (13:43 +0200)]
apache plugin: fix compiler warning on Solaris
Ruben Kerkhof [Sun, 24 Jul 2016 11:41:00 +0000 (13:41 +0200)]
memcached plugin: fix compiler warning on Solaris
| ud.free_func = (void *) memcached_free;
| ^ line 559, memcached.c
assignment type mismatch:
pointer to function(pointer to void) returning void "=" pointer to void
Casting a function pointer to a void pointer is undefined behaviour
in C (it is defined in POSIX however)
Ruben Kerkhof [Sun, 24 Jul 2016 11:37:14 +0000 (13:37 +0200)]
mysql plugin: remove unneccesary cast
Ruben Kerkhof [Sun, 24 Jul 2016 11:29:25 +0000 (13:29 +0200)]
network plugin: unsigned variables can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 11:28:01 +0000 (13:28 +0200)]
utils_dns.c: unsigned variable can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 11:27:18 +0000 (13:27 +0200)]
utils_dns.c: fix strange linebreak
Ruben Kerkhof [Sun, 24 Jul 2016 11:26:19 +0000 (13:26 +0200)]
rrdtool plugin: unsigned value can't be negative
Ruben Kerkhof [Sun, 24 Jul 2016 11:24:54 +0000 (13:24 +0200)]
ted plugin: 0xAA doesn't fit in a signed char
Ruben Kerkhof [Sun, 24 Jul 2016 11:23:58 +0000 (13:23 +0200)]
openldap plugin: rc is only used once
Ruben Kerkhof [Sun, 24 Jul 2016 11:21:45 +0000 (13:21 +0200)]
interface plugin: val is only used once
Ruben Kerkhof [Sun, 24 Jul 2016 11:19:08 +0000 (13:19 +0200)]
Make chrony compile with Solaris Studio compiler
Ideally we'll have autoconf checks for supported attributes,
will look into that later.
Ruben Kerkhof [Sat, 23 Jul 2016 21:26:14 +0000 (23:26 +0200)]
utils_dns.c: remove dead code
Ruben Kerkhof [Sat, 23 Jul 2016 21:24:46 +0000 (23:24 +0200)]
zone plugin: remove unused code
Ruben Kerkhof [Sat, 23 Jul 2016 21:22:33 +0000 (23:22 +0200)]
collectctl: remove dead code
Ruben Kerkhof [Sat, 23 Jul 2016 13:54:20 +0000 (15:54 +0200)]
teamspeak plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 13:30:44 +0000 (15:30 +0200)]
madwifi plugin: fix buffer overflows
Ruben Kerkhof [Sat, 23 Jul 2016 13:24:47 +0000 (15:24 +0200)]
curl_xml plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 13:23:03 +0000 (15:23 +0200)]
utils_curl_stats.c: fix order of calloc arguments
Ruben Kerkhof [Sat, 23 Jul 2016 13:16:41 +0000 (15:16 +0200)]
libcollectdclient: remove unneccesary cast
Ruben Kerkhof [Sat, 23 Jul 2016 13:07:25 +0000 (15:07 +0200)]
processes plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 12:59:38 +0000 (14:59 +0200)]
log_logstash plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 12:57:04 +0000 (14:57 +0200)]
curl_json plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 12:56:21 +0000 (14:56 +0200)]
conntrack plugin: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 12:54:32 +0000 (14:54 +0200)]
utils_cmd_putval.c: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 12:50:17 +0000 (14:50 +0200)]
utils_threshold.c: fix indentation
Ruben Kerkhof [Sat, 23 Jul 2016 11:35:27 +0000 (13:35 +0200)]
collectd.h: guard define of __attribute__
It might have already been defined to a no-op in <sys/cdefs.h>
Ruben Kerkhof [Sat, 23 Jul 2016 11:34:00 +0000 (13:34 +0200)]
collectd.h: remove unused defines
Ruben Kerkhof [Sat, 23 Jul 2016 11:27:39 +0000 (13:27 +0200)]
collectd.h: fix indentation
Florian Forster [Thu, 21 Jul 2016 05:49:50 +0000 (07:49 +0200)]
Merge branch 'collectd-5.5'
Florian Forster [Thu, 21 Jul 2016 05:49:25 +0000 (07:49 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Florian Forster [Tue, 19 Jul 2016 08:00:37 +0000 (10:00 +0200)]
network plugin: Fix heap overflow in parse_packet().
Emilien Gaspar has identified a heap overflow in parse_packet(), the
function used by the network plugin to parse incoming network packets.
This is a vulnerability in collectd, though the scope is not clear at
this point. At the very least specially crafted network packets can be
used to crash the daemon. We can't rule out a potential remote code
execution though.
Fixes: CVE-2016-6254
Ruben Kerkhof [Mon, 18 Jul 2016 18:36:06 +0000 (20:36 +0200)]
Merge pull request #1765 from vincentbernat/fix/kafka-partition-selection
write_kafka: ensure key is properly hashed to select partition
Ruben Kerkhof [Mon, 18 Jul 2016 18:20:40 +0000 (20:20 +0200)]
Merge pull request #1785 from rinigus/master_issue1781
disk plugin: release udev-based name. Fixes #1781
Ruben Kerkhof [Mon, 18 Jul 2016 18:13:55 +0000 (20:13 +0200)]
Merge pull request #1794 from swt2c/smart_use_serial
smart plugin: add option to store data using serial number
Ruben Kerkhof [Sun, 17 Jul 2016 19:02:29 +0000 (21:02 +0200)]
Merge pull request #1796 from tokkee/sh/configure
configure: Use AC_MSG_RESULT to print the config summary.
Sebastian Harl [Sun, 17 Jul 2016 17:08:28 +0000 (19:08 +0200)]
configure: Use AC_MSG_RESULT to print the config summary.
This way, it will show up in config.log as well.
Sebastian Harl [Sun, 17 Jul 2016 16:59:12 +0000 (18:59 +0200)]
configure: Add missing end fold marker (for Vim).
Ruben Kerkhof [Sat, 16 Jul 2016 09:40:35 +0000 (11:40 +0200)]
Merge pull request #1783 from matwey/ntp
ntpd: Check STA_NANO in the server status
Matwey V. Kornilov [Wed, 6 Jul 2016 13:00:55 +0000 (16:00 +0300)]
ntpd: Check STA_NANO in the server status
When STA_NANO is set in ik->status, then results are
expressed in nanoseconds (instead of microseconds by default).
Signed-off-by: Matwey V. Kornilov <matwey.kornilov@gmail.com>
Ruben Kerkhof [Fri, 15 Jul 2016 20:13:47 +0000 (22:13 +0200)]
zookeeper plugin: remove unneccesary cast
Ruben Kerkhof [Fri, 15 Jul 2016 20:04:38 +0000 (22:04 +0200)]
ntpd plugin: remove unneccesary casts
Ruben Kerkhof [Fri, 15 Jul 2016 20:02:08 +0000 (22:02 +0200)]
collectd-nagios: fix some whitespace
Ruben Kerkhof [Fri, 15 Jul 2016 20:01:44 +0000 (22:01 +0200)]
virt plugin: fix some whitespace
Ruben Kerkhof [Fri, 15 Jul 2016 15:02:22 +0000 (17:02 +0200)]
Merge pull request #1793 from rubenk/fix-riemann-plugin-on-32bit-solaris
Fix write_riemann plugin build on 32-bit Solaris
Ruben Kerkhof [Fri, 15 Jul 2016 09:46:52 +0000 (11:46 +0200)]
Fix write_riemann plugin build on 32-bit Solaris
Fixes #1782
CC write_riemann_la-write_riemann.lo
In file included from ./daemon/collectd.h:31:0,
from write_riemann.c:34:
./config.h:1664:0: error: "_FILE_OFFSET_BITS" redefined [-Werror]
#define _FILE_OFFSET_BITS 64
^
In file included from /usr/include/limits.h:17:0,
from
/opt/csw/lib/gcc/i386-pc-solaris2.10/5.2.0/include-fixed/limits.h:168,
from
/opt/csw/lib/gcc/i386-pc-solaris2.10/5.2.0/include-fixed/syslimits.h:7,
from
/opt/csw/lib/gcc/i386-pc-solaris2.10/5.2.0/include-fixed/limits.h:34,
from /opt/csw/include/protobuf-c/protobuf-c.h:200,
from /opt/csw/include/riemann/proto/riemann.pb-c.h:7,
from /opt/csw/include/riemann/attribute.h:21,
from /opt/csw/include/riemann/riemann-client.h:23,
from write_riemann.c:31:
/opt/csw/lib/gcc/i386-pc-solaris2.10/5.2.0/include-fixed/sys/feature_tests.h:196:0:
note: this is the location of the previous definition
#define _FILE_OFFSET_BITS 32
^
cc1: all warnings being treated as errors
Makefile:4645: recipe for target 'write_riemann_la-write_riemann.lo'
failed
gmake[3]: *** [write_riemann_la-write_riemann.lo] Error 1
gmake[3]: Leaving directory
'/home/dam/mgar/pkg/collectd/trunk/work/solaris10-i386/build-isa-pentium_pro/collectd-5.5.1.1126.g37fe166/src'
Makefile:4879: recipe for target 'all-recursive' failed
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory
'/home/dam/mgar/pkg/collectd/trunk/work/solaris10-i386/build-isa-pentium_pro/collectd-5.5.1.1126.g37fe166/src'
Makefile:3209: recipe for target 'all' failed
gmake[1]: *** [all] Error 2
gmake[1]: Leaving directory
'/home/dam/mgar/pkg/collectd/trunk/work/solaris10-i386/build-isa-pentium_pro/collectd-5.5.1.1126.g37fe166/src'
Makefile:572: recipe for target 'all-recursive' failed
gmake: *** [all-recursive] Error 1
gmake: Leaving directory
'/home/dam/mgar/pkg/collectd/trunk/work/solaris10-i386/build-isa-pentium_pro/collectd-5.5.1.1126.g37fe166'
/home/dam/mgar/pkg/.buildsys/v2/gar//gar.lib.mk:874: die Regel für Ziel
„build-work/solaris10-i386/build-isa-pentium_pro/collectd-5.5.1.1126.g37fe166/Makefile“
scheiterte
Scott Talbert [Fri, 15 Jul 2016 14:14:28 +0000 (10:14 -0400)]
smart plugin: add option to store data using serial number
Since a device name (e.g., /dev/sda) can change, allow using the serial number
to store SMART data as this will ensure the data for a given drive is always
kept together.
Ruben Kerkhof [Fri, 15 Jul 2016 14:03:15 +0000 (16:03 +0200)]
Merge pull request #1770 from swt2c/smart_ignore_sleep
smart plugin: add IgnoreSleepMode option to ignore sleeping disks
Scott Talbert [Fri, 15 Jul 2016 13:36:30 +0000 (09:36 -0400)]
smart plugin: add IgnoreSleepMode option to ignore sleeping disks
This option enables the smart plugin to use disks that libatasmart mistakenly
reports as asleep. This happens because libatasmart has not been updated to
incorporate support for newer idle states in the ATA spec.
Ruben Kerkhof [Fri, 15 Jul 2016 10:21:08 +0000 (12:21 +0200)]
Merge pull request #1773 from skob/master
Add slow queries statistics to mysql module
skob [Tue, 28 Jun 2016 09:06:31 +0000 (13:06 +0400)]
Add slow queries statistics to mysql module
Ruben Kerkhof [Fri, 15 Jul 2016 08:56:14 +0000 (10:56 +0200)]
Merge pull request #1774 from mmckinst/rdkafka_now_libkafka
rdkafka is called librdkafka
rinigus [Fri, 8 Jul 2016 12:36:37 +0000 (15:36 +0300)]
disk plugin: release udev-based name. Fixes #1781