Sebastian Harl [Fri, 6 May 2016 22:15:49 +0000 (00:15 +0200)]
grpc plugin: Replace the ListValues RPC with QueryValues.
This is a more powerful function to query values from collectd's cache.
Sebastian Harl [Fri, 6 May 2016 22:09:45 +0000 (00:09 +0200)]
grpc plugin: Split out identifier into it's own message type.
Sebastian Harl [Fri, 6 May 2016 21:49:01 +0000 (23:49 +0200)]
grpc plugin: Use plugin_thread_create instead of pthread_create.
Sebastian Harl [Fri, 6 May 2016 21:47:53 +0000 (23:47 +0200)]
grpc plugin: Always populate *instance fields in a value-list.
That is, ensure a (null-terminated!) empty string if the field is empty.
Sebastian Harl [Mon, 25 Apr 2016 21:52:57 +0000 (23:52 +0200)]
grpc plugin: Update to the new gRPC API.
Sebastian Harl [Mon, 2 Nov 2015 23:03:11 +0000 (00:03 +0100)]
grpc plugin: Make RPC call implementation more modular.
Use a template class for the RPC call object implementation to handle all
common functionality. The actual RPC implementation has been moved into
overloaded functions, one for each RPC. This approach only works as long as
the request and response type pairs are unique per call. That's common
practice, though, and in case there's an exception, it would have to fall back
to the previous approach (one class per call).
Sebastian Harl [Thu, 29 Oct 2015 23:10:38 +0000 (00:10 +0100)]
collectd.conf: Example grpc configuration.
Sebastian Harl [Thu, 29 Oct 2015 23:01:52 +0000 (00:01 +0100)]
grpc plugin: Implement the ListValues() RPC.
Sebastian Harl [Thu, 29 Oct 2015 22:25:25 +0000 (23:25 +0100)]
README: Document grpc dependencies.
Sebastian Harl [Thu, 29 Oct 2015 22:19:53 +0000 (23:19 +0100)]
collectd.conf(5): Document the gRPC plugin.
Sebastian Harl [Thu, 29 Oct 2015 22:15:46 +0000 (23:15 +0100)]
grpc plugin: Make listeners and worker threads configurable.
Sebastian Harl [Thu, 29 Oct 2015 21:37:53 +0000 (22:37 +0100)]
grpc plugin: Add a plugin providing a gRPC server.
gRPC is an open source RPC framework based on protocol buffers. The plugin
currently exposes one RPC end-point for dispatching values to the daemon but
is easy to extend for more functionality.
The plugin is written in C++ and uses an synchronous architecture which should
provide maximum performance. The collectd build system has been extended to
support C++ (11) and protocol buffers (3.0+).
Sebastian Harl [Fri, 6 May 2016 21:52:02 +0000 (23:52 +0200)]
utils cache: Add an iterator interface.
This may be used to query additional information from the cache.
Sebastian Harl [Mon, 30 May 2016 18:54:42 +0000 (20:54 +0200)]
Merge pull request #1710 from rpv-tomsk/perl-plugin-fixes
perl plugin: Synchronize access to thread information.
Cf. #1706
Pavel Rochnyack [Mon, 30 May 2016 06:00:38 +0000 (12:00 +0600)]
perl plugin: Removed commented code
Pavel Rochnyack [Mon, 30 May 2016 05:52:21 +0000 (11:52 +0600)]
perl plugin: Added call_pv_locked() wrapper to handle thread locking flags.
Pavel Rochnyack [Mon, 30 May 2016 05:31:44 +0000 (11:31 +0600)]
perl plugin: Switched to PTHREAD_MUTEX_RECURSIVE locking
Pavel Rochnyack [Fri, 13 May 2016 13:20:22 +0000 (19:20 +0600)]
perl plugin: Fixes for #1706
* Fix coredump due to destroying interpreter on threads running perl.
* Fix deadlock when perl_log() is called from perl_init()
Pavel Rochnyack [Fri, 13 May 2016 08:50:31 +0000 (14:50 +0600)]
perl plugin: lock base thread interpreter in perl_init() too.
Avoid race conditions with c_ithread_create() called from threads of already-initialized plugins.
Fix for https://github.com/collectd/collectd/issues/1706.
Ruben Kerkhof [Thu, 26 May 2016 19:01:50 +0000 (21:01 +0200)]
Merge pull request #1708 from rpv-tomsk/plugin-postgresql-plugininstancefrom-public
Postgresql plugin: set plugin instance from query results.
Pavel Rochnyack [Thu, 12 May 2016 13:34:58 +0000 (19:34 +0600)]
utils_db_query (postgresql/dbi/oracle plugins): Documented PluginInstanceFrom option
Ruben Kerkhof [Wed, 25 May 2016 16:35:53 +0000 (18:35 +0200)]
Merge branch 'collectd-5.5'
Florian Forster [Tue, 14 Jul 2015 06:22:18 +0000 (08:22 +0200)]
plugin_mock.c: Declare "kc".
This hopefully fixes "make check" on Solaris, which currently fails
with:
CC common_test.o
CCLD test_common
Undefined first referenced
symbol in file
kc ./.libs/libcommon.a(common.o)
ld: fatal: symbol referencing errors. No output written to test_common
collect2: error: ld returned 1 exit status
(cherry picked from commit
4fb43017b4b585256627b9503ce0a5cf08ecdefe)
Ruben Kerkhof [Wed, 25 May 2016 16:28:57 +0000 (18:28 +0200)]
Do not link test_plugin_ceph with libcommon
Linking with libplugin_mock is enough since
that one already links with libcommon
Ruben Kerkhof [Wed, 25 May 2016 15:55:15 +0000 (17:55 +0200)]
Set subdir-objects globally instead of per Makefile
Florian Forster [Thu, 11 Jun 2015 13:35:43 +0000 (14:35 +0100)]
Makefile.am: Link tests with required libraries, too.
"make check" fails on Solaris because libraries are missing:
CCLD test_common
Undefined first referenced
symbol in file
kc ./.libs/libcommon.a(common.o)
kstat_data_lookup ./.libs/libcommon.a(common.o)
kstat_lookup ./.libs/libcommon.a(common.o)
kstat_read ./.libs/libcommon.a(common.o)
getaddrinfo ./.libs/libcommon.a(common.o)
freeaddrinfo ./.libs/libcommon.a(common.o)
gai_strerror ./.libs/libcommon.a(common.o)
ld: fatal: symbol referencing errors. No output written to test_common
collect2: error: ld returned 1 exit status
(cherry picked from commit
6213557b1d5c79a60e9c4322263836ca6066aa0e)
Gustavo Zacarias [Mon, 6 Jul 2015 12:59:30 +0000 (09:59 -0300)]
build: add libavltree, libcommon & libheap dependencies
Otherwise it can break on very parallel builds since collectd link time
arrives before one or more of these were built.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
(cherry picked from commit
780e6a76021a240e95007a04b723d827120afa95)
Ruben Kerkhof [Wed, 25 May 2016 15:26:13 +0000 (17:26 +0200)]
Fix a typo that snuck in with
0c8d275
Always test before committing...
Pointy hat to: me
Florian Forster [Tue, 14 Jul 2015 07:00:49 +0000 (09:00 +0200)]
Link libcommon.la with $(COMMON_LIBS).
This hopefully fixes link errors on Solaris:
CCLD test_utils_vl_lookup
Undefined first referenced
symbol in file
kstat_data_lookup daemon/.libs/libcommon.a(common.o)
kstat_lookup daemon/.libs/libcommon.a(common.o)
kstat_read daemon/.libs/libcommon.a(common.o)
getaddrinfo daemon/.libs/libcommon.a(common.o)
freeaddrinfo daemon/.libs/libcommon.a(common.o)
gai_strerror daemon/.libs/libcommon.a(common.o)
ld: fatal: symbol referencing errors. No output written to test_utils_vl_lookup
collect2: error: ld returned 1 exit status
(cherry picked from commit
fe2eee98f4b1cf8c5a5df6ed6cd03d8487c695be)
Conflicts:
src/daemon/Makefile.am
Ruben Kerkhof [Wed, 25 May 2016 14:54:54 +0000 (16:54 +0200)]
Merge branch 'collectd-5.5'
Conflicts:
configure.ac
Ruben Kerkhof [Wed, 25 May 2016 14:53:06 +0000 (16:53 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Ruben Kerkhof [Wed, 25 May 2016 14:52:34 +0000 (16:52 +0200)]
Merge pull request #1726 from rubenk/udev
Udev
Marc Fournier [Wed, 25 May 2016 14:28:01 +0000 (16:28 +0200)]
processes: re-add <sys/user.h> inclusion
cf #1725
Ruben Kerkhof [Wed, 25 May 2016 14:15:32 +0000 (16:15 +0200)]
Stop hardcoding libudev
Ruben Kerkhof [Wed, 25 May 2016 14:13:55 +0000 (16:13 +0200)]
Add missing udev flags to Makefile.am
Marc Fournier [Wed, 25 May 2016 14:13:10 +0000 (16:13 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Ruben Kerkhof [Wed, 25 May 2016 14:00:51 +0000 (16:00 +0200)]
processes: MAXCOMLEN is not exposed on Solaris
MAXCOMLEN in <sys/user.h> is only exposed to kernel
code. I think it's safe to assume that it isn't going
to change, so just hardcode it.
Ruben Kerkhof [Wed, 25 May 2016 13:47:59 +0000 (15:47 +0200)]
Merge pull request #1724 from rpv-tomsk/smart-plugin-udev-dep
Fix for #1688 The SMART plugin does not build/load, v.5.5.0
Pavel Rochnyack [Wed, 25 May 2016 13:01:46 +0000 (19:01 +0600)]
smart plugin: Check for libudev presence
Ruben Kerkhof [Wed, 25 May 2016 11:57:11 +0000 (13:57 +0200)]
Merge pull request #1723 from rpv-tomsk/disk-plugin
Disk plugin: UdevNameAttr feature improvements
Pavel Rochnyack [Wed, 25 May 2016 07:54:46 +0000 (13:54 +0600)]
disk plugin: Initialize udev context only once, not per each read
Pavel Rochnyack [Wed, 25 May 2016 07:15:31 +0000 (13:15 +0600)]
disk plugin: Call disk_udev_attr_name() only when UdevNameAttr configured
Marc Fournier [Fri, 20 May 2016 20:30:54 +0000 (22:30 +0200)]
collectd.conf.in: remove extraneous pound sign
Ruben Kerkhof [Fri, 20 May 2016 10:51:25 +0000 (12:51 +0200)]
Merge branch 'collectd-5.5'
Ruben Kerkhof [Fri, 20 May 2016 10:50:02 +0000 (12:50 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Birger Schmidt [Mon, 16 May 2016 06:39:38 +0000 (08:39 +0200)]
utils_cache.c: fix FORMAT_VL failed ERROR messages
ciomaire [Tue, 3 May 2016 11:41:14 +0000 (13:41 +0200)]
kill correct pid on fdopen failure
Pavel Rochnyack [Thu, 12 May 2016 12:34:56 +0000 (18:34 +0600)]
postgresql plugin: Improve documentation about Result blocks
Pavel Rochnyack [Wed, 11 May 2016 16:41:27 +0000 (22:41 +0600)]
utils_db_query (postgresql/dbi/oracle plugins): Add PluginInstanceFrom option
Ruben Kerkhof [Tue, 10 May 2016 09:53:28 +0000 (11:53 +0200)]
Merge branch 'collectd-5.5'
Ruben Kerkhof [Tue, 10 May 2016 09:52:36 +0000 (11:52 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5
Conflicts:
src/Makefile.am
Ruben Kerkhof [Sat, 23 Apr 2016 15:35:39 +0000 (17:35 +0200)]
rrdtool plugin: fix thread-safety detection
librrd 1.6.0 is now threadsafe and librrd_th is gone.
Since there doesn't seem to be a way to detect that librrd
is threadsafe, use pkg-config to check for 1.6.0 or newer instead.
The logic is now as follows:
Check for librrd >= 1.6.0 with pkg-config
If not found, look for rrd_update_r in librrd_th.
If not found, look for rrd_update in librrd and assume librrd is not
thread safe.
(cherry picked from commit
ef43260cd901847220c2a9de400579ff903ca13e)
Conflicts:
src/Makefile.am
Ruben Kerkhof [Sat, 23 Apr 2016 13:06:03 +0000 (15:06 +0200)]
rrdtool check: stop linking in libm
(cherry picked from commit
32c0ce39f786c56e9d13f3615253a7ae55b578e6)
Ruben Kerkhof [Sat, 23 Apr 2016 13:03:03 +0000 (15:03 +0200)]
rrdtool check: no need to save CPPFLAGS
There's no need to save CPPFLAGS when we're just
checking a library.
(cherry picked from commit
f7e09269879b74e61324de9178503221b2df9136)
Ruben Kerkhof [Sat, 23 Apr 2016 13:00:26 +0000 (15:00 +0200)]
rrdtool check: no need to save LDFLAGS
There's no need to save LDFLAGS when we're just
checking a header.
(cherry picked from commit
38068ecc7922ace29bb6af3f8ee5568c3fe96c08)
Marc Fournier [Tue, 10 May 2016 08:24:29 +0000 (10:24 +0200)]
Merge pull request #1308 from mfournier/openldap-persistent-connection
Openldap: persistent connection + sane default timeout
Marc Fournier [Tue, 10 May 2016 07:49:11 +0000 (09:49 +0200)]
Merge pull request #1686 from rubenk/zfs-arc
Zfs arc
Marc Fournier [Tue, 10 May 2016 07:21:10 +0000 (09:21 +0200)]
apcups: define default server timeout as a constant
Marc Fournier [Tue, 10 May 2016 07:15:20 +0000 (09:15 +0200)]
Merge remote-tracking branch 'origin/pr/1701'
Marc Fournier [Tue, 10 May 2016 06:33:42 +0000 (08:33 +0200)]
build system: rename riemann-c to libriemann-client
... to make this consistent with the other plugins
Pavel Rochnyack [Mon, 9 May 2016 09:15:26 +0000 (15:15 +0600)]
statsd plugin: Fix deadlock on plugin shutdown (Issue #1703)
Pavel Rochnyack [Sun, 8 May 2016 08:10:08 +0000 (14:10 +0600)]
apcups plugin: Change "PersistentConnection" option default value depending on poll Interval.
Pavel Rochnyack [Sun, 8 May 2016 06:53:35 +0000 (12:53 +0600)]
Revert "apcups plugin: Handle "END APC" lines correctly and stop reading."
This reverts commit
fb075e15e3400afdb691b88f1e1a4a38578aaba9.
Pierre-Yves Ritschard [Wed, 4 May 2016 15:28:17 +0000 (17:28 +0200)]
Merge pull request #1695 from collectd/feature/fix-keyless-kafka-produce
write_kafka: reliability when no key provided
Florian Forster [Wed, 4 May 2016 14:37:14 +0000 (16:37 +0200)]
src/daemon/plugin.h: Define DATA_MAX_NAME_LEN conditionally.
Issue: #1690
Pierre-Yves Ritschard [Tue, 3 May 2016 07:59:22 +0000 (09:59 +0200)]
write_kafka: reliability when no key provided
Marc Fournier [Mon, 2 May 2016 19:57:56 +0000 (21:57 +0200)]
Merge branch 'collectd-5.5'
Dagobert Michelsen [Mon, 13 Jul 2015 10:12:07 +0000 (12:12 +0200)]
More missing kstat usages
Marc Fournier [Mon, 2 May 2016 19:17:02 +0000 (21:17 +0200)]
Merge branch 'collectd-5.5'
Dagobert Michelsen [Mon, 13 Jul 2015 10:00:10 +0000 (12:00 +0200)]
Add missing kstat definitions
Dagobert Michelsen [Thu, 18 Jun 2015 13:28:36 +0000 (15:28 +0200)]
Take out explicit definitions as they are already checked via enable_standards in configure.ac.
Fixes: #978
Florian Forster [Fri, 3 Jul 2015 10:31:32 +0000 (12:31 +0200)]
collectd-tg: Move _POSIX_C_SOURCE and friends to the Makefile.
Apparently defining this in the source files confuses Solaris' libc.
Thanks to @dago for looking into this.
Hopefully fixes: #978
Marc Fournier [Mon, 2 May 2016 14:14:48 +0000 (16:14 +0200)]
Merge branch 'collectd-5.5'
Marc Fournier [Mon, 2 May 2016 14:07:47 +0000 (16:07 +0200)]
processes: remove initialisation of unexisting variables
Partial revert of
1f0156c, which broke the build on Solaris and OpenBSD.
The context-switch reporting code is only part of master at the moment.
Fixes: #1674
coreykosak [Mon, 2 May 2016 13:48:09 +0000 (09:48 -0400)]
Modify the -T command line option so it watches for more errors. (#1642)
After this change, the following kinds of errors will cause collectd -T to
exit with an abnormal status:
- errors reading the config file
- errors reading types.db
- errors on plugin_init
- errors on plugin_shutdown
Ruben Kerkhof [Wed, 27 Apr 2016 14:18:30 +0000 (16:18 +0200)]
amqp plugin: prevent use after free
Found by scan-build:
amqp.c:1097:13: warning: Use of memory after it is freed
camqp_config_free (conf);
^~~~~~~~~~~~~~~~~~~~~~~~
Ruben Kerkhof [Wed, 27 Apr 2016 12:56:42 +0000 (14:56 +0200)]
pf plugin: value stored in fd is never read
Found by scan-build:
pf.c:109:2: warning: Value stored to 'fd' is never read
fd = -1;
^ ~~
Ruben Kerkhof [Wed, 27 Apr 2016 12:37:24 +0000 (14:37 +0200)]
add format attribute to varargs functions
Ruben Kerkhof [Wed, 27 Apr 2016 12:21:28 +0000 (14:21 +0200)]
target_set: mark function as static
Ruben Kerkhof [Wed, 27 Apr 2016 12:01:58 +0000 (14:01 +0200)]
zfs_arc plugin: get more MRU/MFU stats
Ruben Kerkhof [Wed, 27 Apr 2016 11:46:24 +0000 (13:46 +0200)]
zfs_arc plugin: get more sizes of various caches
Ruben Kerkhof [Wed, 27 Apr 2016 11:28:15 +0000 (13:28 +0200)]
zfs_arc plugin: get the target size of the MRU
Also known as 'p'
Ruben Kerkhof [Wed, 27 Apr 2016 11:07:38 +0000 (13:07 +0200)]
zfs_arc plugin: add memory_throttle_count stat
This tells you how often the ARC has been shrunk to release
memory for other processes.
Ruben Kerkhof [Wed, 27 Apr 2016 09:45:35 +0000 (11:45 +0200)]
zfs_arc plugin: fix indentation
Ruben Kerkhof [Wed, 27 Apr 2016 09:44:22 +0000 (11:44 +0200)]
zfs_arc plugin: cleanup defines
Marc Fournier [Sun, 24 Apr 2016 21:50:22 +0000 (23:50 +0200)]
RPM specfile: take new xencpu plugin in account
Ruben Kerkhof [Sun, 24 Apr 2016 16:34:44 +0000 (18:34 +0200)]
Merge pull request #1565 from rpv-tomsk/disk-plugin-ignorelist
* disk plugin: call ignorelist_match() once per device, not for each send metric
Pavel Rochnyack [Thu, 25 Feb 2016 15:10:55 +0000 (22:10 +0700)]
* disk plugin: call ignorelist_match() once per device, not for each sent metric
Ruben Kerkhof [Sun, 24 Apr 2016 11:25:21 +0000 (13:25 +0200)]
Merge pull request #1546 from mfournier/processname_length_1284
processes: warn about process names above OS limit
Ruben Kerkhof [Sun, 24 Apr 2016 10:49:46 +0000 (12:49 +0200)]
Merge pull request #1557 from rpv-tomsk/master
* Collectd::Unixsock: Split messages sent by flush() to 1024 byte chunks to not overflow buffer in unixsock.c us_handle_client().
Ruben Kerkhof [Sun, 24 Apr 2016 10:48:42 +0000 (12:48 +0200)]
Merge pull request #1564 from rpv-tomsk/disk-plugin
disk plugin: send disk_merged,disk_io_time,pending_operations only when real data exists for device
Ruben Kerkhof [Sat, 23 Apr 2016 19:28:31 +0000 (21:28 +0200)]
AC_CONFIG_SRCDIR needs to point to a unique file
AC_CONFIG_SRCDIR is a bit of a misnomer, in that it should
point to a unique file in the top source directory, not to
the directory itself.
Ruben Kerkhof [Sat, 23 Apr 2016 15:35:39 +0000 (17:35 +0200)]
rrdtool plugin: fix thread-safety detection
librrd 1.6.0 is now threadsafe and librrd_th is gone.
Since there doesn't seem to be a way to detect that librrd
is threadsafe, use pkg-config to check for 1.6.0 or newer instead.
The logic is now as follows:
Check for librrd >= 1.6.0 with pkg-config
If not found, look for rrd_update_r in librrd_th.
If not found, look for rrd_update in librrd and assume librrd is not
thread safe.
Ruben Kerkhof [Sat, 23 Apr 2016 13:22:52 +0000 (15:22 +0200)]
HAVE_THREADSAFE_LIBRRD is either defined or not
Ruben Kerkhof [Sat, 23 Apr 2016 13:06:03 +0000 (15:06 +0200)]
rrdtool check: stop linking in libm
Ruben Kerkhof [Sat, 23 Apr 2016 13:03:03 +0000 (15:03 +0200)]
rrdtool check: no need to save CPPFLAGS
There's no need to save CPPFLAGS when we're just
checking a library.
Ruben Kerkhof [Sat, 23 Apr 2016 13:00:26 +0000 (15:00 +0200)]
rrdtool check: no need to save LDFLAGS
There's no need to save LDFLAGS when we're just
checking a header.
Ruben Kerkhof [Sat, 23 Apr 2016 12:54:34 +0000 (14:54 +0200)]
liboconfig: enable dependency tracking
Nowadays there's no reason not too.
Also remove the foreign option, since we set that as default
in configure.ac already.
Ruben Kerkhof [Sat, 23 Apr 2016 12:08:07 +0000 (14:08 +0200)]
sfree: don't check for NULL before calling free
free(NULL) is safe to call
Ruben Kerkhof [Sat, 23 Apr 2016 12:05:21 +0000 (14:05 +0200)]
Merge branch 'cppcheck'