Florian Forster [Tue, 16 Jun 2015 18:59:14 +0000 (20:59 +0200)]
network plugin: Simplify config handling.
Remove network_config_set_{boolean,string} and replace them with
cf_util_get_{boolean,string}. The other, more specialized, config handling
functions were also simplified.
Marc Fournier [Mon, 15 Jun 2015 09:01:42 +0000 (11:01 +0200)]
configure: turbostat: check for MSR_PKG_C10_RESIDENCY symbol
Older versions of `asm/msr-index.h` don't have all the symbol needed to
build the turbostat plugin. Checking for MSR_PKG_C10_RESIDENCY seems to
guarantee we have a recent enough `asm/msr-index.h`.
Tagir Bakirov [Thu, 11 Jun 2015 10:26:51 +0000 (12:26 +0200)]
contrib/redhat/collectd.spec: added bison and flex
Current .spec does not work due to missing bison and flex dependencies.
This fix lets install bison and flex into the build environment as well as
define YACC and YFLAGS environment variables.
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
Florian Forster [Thu, 11 Jun 2015 13:34:01 +0000 (14:34 +0100)]
configure.ac: Ask users to build 64-bit Solaris binaries.
By default, the compilers will build 32-bit binaries on Solaris. This is
sub-optimal for us, for example reading /proc entries for 64-bit
processes doesn't work when collectd is 32-bit.
Florian Forster [Thu, 11 Jun 2015 06:46:54 +0000 (07:46 +0100)]
dns plugin: Check for "struct ip6_ext".
Solaris appears to declare the struct, but only when The Right defines
are specified at compile time. As a quick and dirty fix, only build with
IPv6 support when the struct is usable.
Florian Forster [Wed, 10 Jun 2015 07:39:24 +0000 (08:39 +0100)]
tcpconns plugin: Fix memory leak.
"prev" was set to NULL and never updated, leading to "port_list_head" to
be set to an entry later in the list. This leaks memory because earlier
entries in the list are now unreachable.
Florian Forster [Mon, 8 Jun 2015 10:33:49 +0000 (12:33 +0200)]
apcups plugin: Fight code rot.
* Use the cleaner "complex" config and the cf_util_* functions.
* Rename "host" and "port" to "node" and "service".
Use cf_util_get_service() so users may specify services as string.
* Remove unused defines.
Florian Forster [Sat, 6 Jun 2015 20:33:34 +0000 (22:33 +0200)]
src/daemon/plugin.[ch]: Use cdtime_t for the interval argument of "register complex read".
All plugins converted to "struct timespec", just so that
plugin_register_complex_read() would convert back to cdtime_t again. This patch
removed this crazyness; the new "determine automatically" value is zero (used
to be NULL).
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.
Robert Viduya [Wed, 3 Jun 2015 12:34:37 +0000 (08:34 -0400)]
disk plugin: Fix compatibility for Mac OS X 10.10.
Here’s a fixed version of the disk plugin that makes it work under Mac
OSX 10.10, and hopefully previous releases. The original version was
looking for the disk name in one dictionary, but it was actually in
another. I suspect at some point, Apple moved the disk name property,
but I don’t have any previous releases to check.
I changed the code to look for the disk name in both dictionaries, so
hopefully it’s backward compatible.
Florian Forster [Sun, 31 May 2015 20:54:47 +0000 (22:54 +0200)]
tail_csv plugin: Print warning and continue when metric is not found.
Previously, when multiple metrics were specified on one "Collect" line and one
didn't exist, all *following* metrics would be ignored. This patch changes this
to continue in this case and configure as many metrics as possible.
Plugin tail_csv: the manual says that you can use multiple times the
Collect option but the code expecs t"Collect n1 n2 n3 n4", fix
to allow to put the option Collect multiple times.
Plugin tail_csv: if TimeFrom is not specified in config file
the default value for time_from is -1 and the type of fileds_num
is size_t, so the comparsion of signed and unsigned not work as espected
Florian Forster [Sat, 30 May 2015 21:13:42 +0000 (23:13 +0200)]
statsd plugin: Free latency counter and AVL trees.
latency counters (used by TIMER metrics) and AVL trees (used by SET metrics)
were not freed when cleaning up unused metrics. This resulted in leaked memory.
Florian Forster [Tue, 26 May 2015 19:43:10 +0000 (21:43 +0200)]
Build system: Fix linking with libheap.la and depend on testing.h.
collectd-tg tried to link with libheap.a (instead of ….la), which
doesn't exist. testing.h was not mentioned by any target, leading to it
being missing form the tarballs.
Florian Forster [Tue, 26 May 2015 06:52:39 +0000 (08:52 +0200)]
Build system: Build tested units as libraries.
This simplifies the build rules for the tests, aka. check programs.
* test_foo.c have been renamed to foo_test.c.
* foo_test.c now reside right next to foo.c and foo.h.
* Build and refer to .la files, rather than depending on .c files from
other directories.