Code

collectd.git
8 years agoceph plugin: Change g_num_daemons to size_t.
Florian Forster [Sun, 14 Aug 2016 19:02:31 +0000 (21:02 +0200)]
ceph plugin: Change g_num_daemons to size_t.

The variable is used as size for variable length arrays (VLAs), which
cannot have negative size.

Issue: #1835

8 years agowrite_http plugin: Sanity check arguments to wh_write_command().
Florian Forster [Sun, 14 Aug 2016 18:47:15 +0000 (20:47 +0200)]
write_http plugin: Sanity check arguments to wh_write_command().

Issue: #1835

8 years agoannotate vfprintf-like 'vcomplain' function
Ruben Kerkhof [Sun, 14 Aug 2016 18:28:43 +0000 (20:28 +0200)]
annotate vfprintf-like 'vcomplain' function

utils_complain.c:56:40: warning: format string is not a string literal
[-Wformat-nonliteral]
        vsnprintf (message, sizeof (message), format, ap);
                                              ^~~~~~

8 years agolibcollectdclient: annotate vprintf-like function
Ruben Kerkhof [Sun, 14 Aug 2016 18:18:47 +0000 (20:18 +0200)]
libcollectdclient: annotate vprintf-like function

client.c:126:21: warning: format string is not a string literal [-Wformat-nonliteral]
  status = vprintf (format, ap);
                    ^~~~~~

8 years agoPython plugin: fix compiler warning
Ruben Kerkhof [Sun, 14 Aug 2016 17:51:34 +0000 (19:51 +0200)]
Python plugin: fix compiler warning

python.c:397:25: warning: comparison of integers of different signs:
'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
                        for (size_t i = 0; i < num; ++i) {
                                           ~ ^ ~~~

8 years agoLua plugin: fix old style definition
Ruben Kerkhof [Sun, 14 Aug 2016 17:32:37 +0000 (19:32 +0200)]
Lua plugin: fix old style definition

lua.c: In function ‘module_register’:
lua.c:588:6: warning: old-style function definition
[-Wold-style-definition]
 void module_register() {
      ^~~~~~~~~~~~~~~

8 years agoMerge pull request #1885 from rubenk/lua-plugin
Ruben Kerkhof [Sun, 14 Aug 2016 15:14:25 +0000 (17:14 +0200)]
Merge pull request #1885 from rubenk/lua-plugin

Add a Lua plugin for Collectd

8 years agoREADME: bump Python requirement to 2.6
Ruben Kerkhof [Sun, 14 Aug 2016 13:55:17 +0000 (15:55 +0200)]
README: bump Python requirement to 2.6

8 years agoLua plugin: add to rpm specfile
Ruben Kerkhof [Sun, 14 Aug 2016 13:54:24 +0000 (15:54 +0200)]
Lua plugin: add to rpm specfile

8 years agoLua plugin: add to README
Ruben Kerkhof [Sun, 14 Aug 2016 13:48:55 +0000 (15:48 +0200)]
Lua plugin: add to README

8 years agoLua plugin: make function array const
Ruben Kerkhof [Sun, 14 Aug 2016 13:10:04 +0000 (15:10 +0200)]
Lua plugin: make function array const

8 years agoLua plugin: Terminate array with sentinel
Ruben Kerkhof [Sun, 14 Aug 2016 13:08:40 +0000 (15:08 +0200)]
Lua plugin: Terminate array with sentinel

From the API docs:
Any array of luaL_Reg must end with a sentinel entry in which both name
and func are NULL.

8 years agocollectd-lua(5) fix syntax error in pod
Ruben Kerkhof [Sun, 14 Aug 2016 12:43:07 +0000 (14:43 +0200)]
collectd-lua(5) fix syntax error in pod

8 years agoLua plugin: add section to collectd.conf(5)
Ruben Kerkhof [Sun, 14 Aug 2016 12:14:40 +0000 (14:14 +0200)]
Lua plugin: add section to collectd.conf(5)

8 years agoLua plugin: s/Collectd/collectd/g in manpage
Ruben Kerkhof [Sun, 14 Aug 2016 11:58:14 +0000 (13:58 +0200)]
Lua plugin: s/Collectd/collectd/g in manpage

8 years agoLua plugin: fix build with Lua 5.1
Ruben Kerkhof [Sun, 14 Aug 2016 11:56:16 +0000 (13:56 +0200)]
Lua plugin: fix build with Lua 5.1

8 years agoLua plugin: add a manpage
Ruben Kerkhof [Sun, 14 Aug 2016 11:42:41 +0000 (13:42 +0200)]
Lua plugin: add a manpage

8 years agoLua plugin: turn the collectd functions into a lib
Ruben Kerkhof [Sun, 14 Aug 2016 10:07:59 +0000 (12:07 +0200)]
Lua plugin: turn the collectd functions into a lib

Now the module shows up in 'package.loaded':

for name, func in pairs(package.loaded['collectd']) do
    print(name, func)
end

returns:
dispatch_values function: 0x7f38b8a472c0
log_debug function: 0x7f38b8a47130
register_write function: 0x7f38b8a47520
log_info function: 0x7f38b8a470d0
register_read function: 0x7f38b8a47360
log_warning function: 0x7f38b8a47070
log_error function: 0x7f38b8a47100
log_notice function: 0x7f38b8a470a0

8 years agoLua plugin: use existing type for functions array
Ruben Kerkhof [Sun, 14 Aug 2016 09:59:03 +0000 (11:59 +0200)]
Lua plugin: use existing type for functions array

8 years agoMerge remote-tracking branch 'github/pr/1882'
Florian Forster [Sun, 14 Aug 2016 07:33:32 +0000 (09:33 +0200)]
Merge remote-tracking branch 'github/pr/1882'

8 years agoMerge pull request #1887 from rubenk/make-xfs-optional
Ruben Kerkhof [Sat, 13 Aug 2016 17:21:21 +0000 (19:21 +0200)]
Merge pull request #1887 from rubenk/make-xfs-optional

Add an option to disable building with XFS support

8 years agoliboconfig: make function static
Ruben Kerkhof [Sat, 13 Aug 2016 16:51:55 +0000 (18:51 +0200)]
liboconfig: make function static

8 years agoconfigfile.h: remove unused declaration
Ruben Kerkhof [Sat, 13 Aug 2016 16:45:10 +0000 (18:45 +0200)]
configfile.h: remove unused declaration

8 years agoStop using net-snmp-config to detect libnetsmp
Ruben Kerkhof [Sat, 13 Aug 2016 15:36:48 +0000 (17:36 +0200)]
Stop using net-snmp-config to detect libnetsmp

net-snmp-config returns the settings used to compile and link
libnetsnmp, not the settings needed to compile and link code against it.

This resulted in various issues, namely overlinking, failure to compile
without compiler optimisations, and overriding of our compiler flags.

One example is the following, just noticed on RHEL5:

cc1: warnings being treated as errors
snmp.c: In function 'csnmp_config_add_host':
snmp.c:767: warning: ISO C90 forbids mixed declarations and code
make[3]: *** [snmp_la-snmp.lo] Error 1

We do compile in C99 mode, but net-snmp-config adds
-Wdeclaration-after-statement to our build command line. The GCC on
RHEL5 returns a warning, while later GCCs just ignore this.

8 years agocollectdmon: define PREFIX and LOCALSTATEDIR
Ruben Kerkhof [Sat, 13 Aug 2016 14:34:37 +0000 (16:34 +0200)]
collectdmon: define PREFIX and LOCALSTATEDIR

Not an issue in practice, but this helps when running the code through
lint.

8 years agocollectdctl: prefix may be undefined as well
Ruben Kerkhof [Sat, 13 Aug 2016 14:27:47 +0000 (16:27 +0200)]
collectdctl: prefix may be undefined as well

This won't happen in practice since ./configure sets it, but it isn't
set when running the code through lint.

8 years agoceph plugin: just continue
Ruben Kerkhof [Sat, 13 Aug 2016 14:25:06 +0000 (16:25 +0200)]
ceph plugin: just continue

8 years agobarometer plugin: add missing include
Ruben Kerkhof [Sat, 13 Aug 2016 14:21:32 +0000 (16:21 +0200)]
barometer plugin: add missing include

8 years agocollectctl: define LOCALSTATEDIR if not defined
Ruben Kerkhof [Sat, 13 Aug 2016 14:21:01 +0000 (16:21 +0200)]
collectctl: define LOCALSTATEDIR if not defined

8 years agowrite_log plugin: mark unused attribute as unused
Ruben Kerkhof [Sat, 13 Aug 2016 13:58:04 +0000 (15:58 +0200)]
write_log plugin: mark unused attribute as unused

8 years agotreewide: use designated initializers for user_data
Ruben Kerkhof [Sat, 13 Aug 2016 13:55:39 +0000 (15:55 +0200)]
treewide: use designated initializers for user_data

8 years agoopenldap plugin: replace comma with semicolon
Ruben Kerkhof [Sat, 13 Aug 2016 13:23:27 +0000 (15:23 +0200)]
openldap plugin: replace comma with semicolon

This incidentally worked, but it is not a good idea.

8 years agoLua plugin: wrap debug code in COLLECT_DEBUG
Ruben Kerkhof [Sat, 13 Aug 2016 12:37:15 +0000 (14:37 +0200)]
Lua plugin: wrap debug code in COLLECT_DEBUG

No use formatting the string if we're not going to use it.

8 years agoAdd an option to disable building with XFS support
Ruben Kerkhof [Sat, 13 Aug 2016 11:23:34 +0000 (13:23 +0200)]
Add an option to disable building with XFS support

Right now, if you have the xfs development headers installed,
they will be picked up. Add an option to disable this behaviour.

Fixes #1878

8 years agozone plugin: fix typo in error message
Ruben Kerkhof [Sat, 13 Aug 2016 09:39:29 +0000 (11:39 +0200)]
zone plugin: fix typo in error message

8 years agocollectd.conf(5): add Host option for curl_json
Ruben Kerkhof [Sat, 13 Aug 2016 09:28:36 +0000 (11:28 +0200)]
collectd.conf(5): add Host option for curl_json

8 years agoconfigure.ac: check for ExtUtils::MakeMaker
Ruben Kerkhof [Sat, 13 Aug 2016 09:13:13 +0000 (11:13 +0200)]
configure.ac: check for ExtUtils::MakeMaker

The perl bindings need this module so perl can generate Makefile.pl.

Fixes #1886

8 years agoAdd a Lua plugin for Collectd
Julien Ammous [Fri, 12 Aug 2016 20:10:59 +0000 (22:10 +0200)]
Add a Lua plugin for Collectd

8 years agogrpc plugin: Unify SSL config options.
Florian Forster [Fri, 12 Aug 2016 13:32:48 +0000 (15:32 +0200)]
grpc plugin: Unify SSL config options.

These option names have been copied from the Apache webserver.

8 years agogrpc plugin: Implement the <Server "host" "port"> option.
Florian Forster [Fri, 12 Aug 2016 13:22:49 +0000 (15:22 +0200)]
grpc plugin: Implement the <Server "host" "port"> option.

This allows the gRPC plugin to send metrics, via gRPC, to another
collectd instance or other implementation of the "Collectd" gRPC
service.

8 years agoMerge pull request #900 from ccin2p3/faxmodem/cpu-numcpu
Ruben Kerkhof [Fri, 12 Aug 2016 11:15:28 +0000 (13:15 +0200)]
Merge pull request #900 from ccin2p3/faxmodem/cpu-numcpu

implement reporting of ncpu

8 years agoaddress @octo and @rubenk's comments
Fᴀʙɪᴇɴ Wᴇʀɴʟɪ [Fri, 12 Aug 2016 11:04:00 +0000 (13:04 +0200)]
address @octo and @rubenk's comments

Change-Id: I5661a555d95227e63b3c873a0fd0b2360a040342

8 years agoMerge pull request #1873 from rubenk/fix-duplicate-label_t
Ruben Kerkhof [Fri, 12 Aug 2016 09:22:37 +0000 (11:22 +0200)]
Merge pull request #1873 from rubenk/fix-duplicate-label_t

Work around Solaris 10 defining label_t

8 years agoMerge pull request #1875 from rubenk/remove-configfile-h-from-plugins
Ruben Kerkhof [Fri, 12 Aug 2016 08:58:59 +0000 (10:58 +0200)]
Merge pull request #1875 from rubenk/remove-configfile-h-from-plugins

Remove configfile.h from plugins

8 years agoMerge pull request #1876 from octo/issue/1819
Sebastian Harl [Thu, 11 Aug 2016 20:51:50 +0000 (22:51 +0200)]
Merge pull request #1876 from octo/issue/1819

grpc plugin: Refactor plugin.

8 years agoMerge branch 'collectd-5.5'
Ruben Kerkhof [Thu, 11 Aug 2016 16:40:40 +0000 (18:40 +0200)]
Merge branch 'collectd-5.5'

8 years agoMerge branch 'collectd-5.4' into collectd-5.5
Ruben Kerkhof [Thu, 11 Aug 2016 15:45:48 +0000 (17:45 +0200)]
Merge branch 'collectd-5.4' into collectd-5.5

8 years agomd: fix deprecation warning with latest glibc
Ruben Kerkhof [Thu, 11 Aug 2016 15:44:42 +0000 (17:44 +0200)]
md: fix deprecation warning with latest glibc

md.c: In function ‘md_process’:
md.c:120:3: warning: ‘__makedev_from_sys_types’ is deprecated:
  In the GNU C Library, `makedev' is defined by <sys/sysmacros.h>.
  For historical compatibility, it is currently defined by
  <sys/types.h> as well, but we plan to remove this soon.
  To use `makedev', include <sys/sysmacros.h> directly.
  If you did not intend to use a system-defined macro `makedev',
  you should #undef it after including <sys/types.h>.
  [-Wdeprecated-declarations]
   if (st.st_rdev != makedev (MD_MAJOR, minor))
   ^~
In file included from /usr/include/features.h:397:0,
                 from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/stdio.h:28,
                 from ./daemon/collectd.h:34,
                 from md.c:22:

8 years agocommon.c: fix calloc arguments order
Ruben Kerkhof [Thu, 11 Aug 2016 15:14:54 +0000 (17:14 +0200)]
common.c: fix calloc arguments order

8 years agoMerge remote-tracking branch 'github/pr/1530'
Florian Forster [Thu, 11 Aug 2016 15:10:13 +0000 (17:10 +0200)]
Merge remote-tracking branch 'github/pr/1530'

8 years agoimplement reporting of ncpu
Fabien Wernli [Tue, 20 Jan 2015 14:21:06 +0000 (15:21 +0100)]
implement reporting of ncpu

Change-Id: Ia305b74139352f16f71b1f747875d6c7a0c376a4

8 years agoFix conceptual buglet in default_callback
David Gibson [Wed, 10 Aug 2016 10:07:14 +0000 (20:07 +1000)]
Fix conceptual buglet in default_callback

The 'DERIVE' path in default_callback() increments the 'counter' field of
value instead of the 'derive' field.  Since those fields have the same
type and offset within the value union this will still work fine, but
AFAICT it's conceptually incorrect.  This corrects it.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Florian Forster <octo@collectd.org>
8 years agoproto/collectd.proto: Improve documentation.
Florian Forster [Thu, 11 Aug 2016 06:34:31 +0000 (08:34 +0200)]
proto/collectd.proto: Improve documentation.

DispatchValues' documentation is now written from the POV of the server,
not the caller as it was previously worded.

8 years agogrpc plugin: Rename "err" to "status".
Florian Forster [Thu, 11 Aug 2016 05:53:10 +0000 (07:53 +0200)]
grpc plugin: Rename "err" to "status".

8 years agostatsd, utils_latency: allow to reduce bin width
Pavel Rochnyack [Sun, 20 Mar 2016 09:43:36 +0000 (15:43 +0600)]
statsd, utils_latency: allow to reduce bin width

8 years agosrc/daemon/common.c: avoid leaking cap_header in error condition
Marc Fournier [Wed, 10 Aug 2016 20:42:23 +0000 (22:42 +0200)]
src/daemon/common.c: avoid leaking cap_header in error condition

8 years agosrc/daemon/common.c: avoid using private structs from <linux/capability.h>
Marc Fournier [Wed, 10 Aug 2016 16:14:35 +0000 (18:14 +0200)]
src/daemon/common.c: avoid using private structs from <linux/capability.h>

8 years agoturbostat: avoid potential unused variable
Marc Fournier [Wed, 10 Aug 2016 16:12:54 +0000 (18:12 +0200)]
turbostat: avoid potential unused variable

8 years agofix typographical mistake in warning message
Marc Fournier [Wed, 10 Aug 2016 16:12:10 +0000 (18:12 +0200)]
fix typographical mistake in warning message

8 years agoswap plugin: fix leak on error
Ruben Kerkhof [Wed, 10 Aug 2016 15:17:57 +0000 (17:17 +0200)]
swap plugin: fix leak on error

8 years agowrite_sensu plugin: fix build on OpenBSD
Ruben Kerkhof [Wed, 10 Aug 2016 14:03:20 +0000 (16:03 +0200)]
write_sensu plugin: fix build on OpenBSD

time_t is a long long on OpenBSD

8 years agochrony plugin: fix build on OpenBSD
Ruben Kerkhof [Wed, 10 Aug 2016 14:02:54 +0000 (16:02 +0200)]
chrony plugin: fix build on OpenBSD

time_t is a long long on OpenBSD

8 years agoproto/*.proto: Reformat using clang-format.
Florian Forster [Wed, 10 Aug 2016 12:46:24 +0000 (14:46 +0200)]
proto/*.proto: Reformat using clang-format.

8 years agogrpc plugin: Move all functions to a single service again.
Florian Forster [Wed, 10 Aug 2016 12:42:59 +0000 (14:42 +0200)]
grpc plugin: Move all functions to a single service again.

8 years agogrpc plugin: Switch to the synchronous interface.
Florian Forster [Tue, 2 Aug 2016 12:15:45 +0000 (14:15 +0200)]
grpc plugin: Switch to the synchronous interface.

8 years agoproto/*.proto: Add the go_package option.
Florian Forster [Fri, 29 Jul 2016 09:24:42 +0000 (11:24 +0200)]
proto/*.proto: Add the go_package option.

8 years agogrpc plugin: Turn QueryValues into a server-side streaming RPC.
Florian Forster [Tue, 2 Aug 2016 06:14:24 +0000 (08:14 +0200)]
grpc plugin: Turn QueryValues into a server-side streaming RPC.

8 years agoBuild system: set CPPFLAGS when checking for <grpc++/grpc++.h>
Florian Forster [Wed, 10 Aug 2016 12:43:42 +0000 (14:43 +0200)]
Build system: set CPPFLAGS when checking for <grpc++/grpc++.h>

8 years agocommon.c: fix compilation on OpenBSD
Ruben Kerkhof [Wed, 10 Aug 2016 11:04:27 +0000 (13:04 +0200)]
common.c: fix compilation on OpenBSD

cc1: warnings being treated as errors
common.c: In function 'set_sock_opts':
common.c:1572: warning: unused variable 'tcp_keepintvl'
common.c:1571: warning: unused variable 'tcp_keepidle'
*** Error 1 in target 'common.lo'
*** Error 1 in src/daemon (Makefile:1048 'common.lo': @echo "  CC      " common.lo;depbase=`echo common.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$|...)
*** Error 1 in src (Makefile:5007 'all-recursive')
*** Error 2 in src (Makefile:3284 'all')
*** Error 1 in /root/src/collectd (Makefile:611 'all-recursive')

8 years agoIgnore cscope files
Ruben Kerkhof [Wed, 10 Aug 2016 09:01:41 +0000 (11:01 +0200)]
Ignore cscope files

8 years agoRemove configfile.h from plugins
Ruben Kerkhof [Wed, 10 Aug 2016 08:26:45 +0000 (10:26 +0200)]
Remove configfile.h from plugins

It is already included by collectd.h

8 years agocheck_capability: explicitly target recent linux implementations
Marc Fournier [Tue, 17 May 2016 05:36:34 +0000 (07:36 +0200)]
check_capability: explicitly target recent linux implementations

There are several, incompatible, capabilities implementations, all
exposed through `<sys/capability.h>`. Currently only Linux's V3
function and capability sets are supported.

This patch guards against using Linux-specific functions & capabilities
on other implementations, while structring the code to allow adding
support for them.

8 years agoiptables: include libiptc headers before capability.h
Marc Fournier [Tue, 10 May 2016 16:01:49 +0000 (18:01 +0200)]
iptables: include libiptc headers before capability.h

Some versions of sys/capability.h seem to have conflicting declarations
with other (linux) kernel header files, so order matters.

8 years agocheck and warn about capabilities misconfiguration
Marc Fournier [Tue, 26 Jan 2016 20:46:59 +0000 (21:46 +0100)]
check and warn about capabilities misconfiguration

Add WARNING() statements to a bunch of plugins which require special
privileges to work properly. They would be emitted once at startup time,
if running as root with privileges dropped, or if running as a normal
users without the needed capabilities explicitly set.

Related to #1444

8 years agoturbostat plugin: use check_capability() function
Marc Fournier [Tue, 26 Jan 2016 17:30:17 +0000 (18:30 +0100)]
turbostat plugin: use check_capability() function

8 years agosrc/daemon/common.[ch]: add check_capability() function
Marc Fournier [Tue, 26 Jan 2016 17:14:09 +0000 (18:14 +0100)]
src/daemon/common.[ch]: add check_capability() function

This is largely inspired by the capability check done in
src/turbostat.c, so most of the credits go to Vincent Brillault.

8 years agomysql plugin: Remove trailing whitespace.
Florian Forster [Tue, 9 Aug 2016 19:46:21 +0000 (21:46 +0200)]
mysql plugin: Remove trailing whitespace.

8 years agoAllow MySQL to use SSL connections
Brian Lalor [Thu, 3 Sep 2015 22:41:21 +0000 (18:41 -0400)]
Allow MySQL to use SSL connections

8 years agoMerge pull request #1549 from mfournier/socket-keepalive
Marc Fournier [Tue, 9 Aug 2016 14:55:03 +0000 (16:55 +0200)]
Merge pull request #1549 from mfournier/socket-keepalive

Enable TCP socket keepalive on write plugins

8 years agocollectd.spec: add missing %define required by gps plugin
Marc Fournier [Tue, 9 Aug 2016 12:40:36 +0000 (14:40 +0200)]
collectd.spec: add missing %define required by gps plugin

8 years agocollectdctl.c: fix two compiler warnings
Ruben Kerkhof [Tue, 9 Aug 2016 11:57:36 +0000 (13:57 +0200)]
collectdctl.c: fix two compiler warnings

collectdctl.c: In function ‘flush’:
collectdctl.c:315:21: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
   for (int i = 0; i < plugins_num; ++i) {
                     ^
collectdctl.c:323:25: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
       for (int j = 0; j < identifiers_num; ++j) {
                         ^

8 years agogps plugin: fix compiler warning
Ruben Kerkhof [Tue, 9 Aug 2016 11:51:46 +0000 (13:51 +0200)]
gps plugin: fix compiler warning

gps.c:242:12: warning: function declaration isn’t a prototype
[-Wstrict-prototypes]
 static int cgps_read ()
            ^~~~~~~~~
gps.c: In function ‘cgps_read’:
gps.c:242:12: warning: old-style function definition
[-Wold-style-definition]

8 years agoutils_db_query.c: fix compiler warning
Ruben Kerkhof [Tue, 9 Aug 2016 11:51:02 +0000 (13:51 +0200)]
utils_db_query.c: fix compiler warning

utils_db_query.c: In function ‘udb_result_submit’:
utils_db_query.c:259:11: warning: declaration of ‘status’ shadows a
previous local [-Wshadow]
       int status = strjoin (vl.type_instance, sizeof
(vl.type_instance),
           ^~~~~~

8 years agocollectd.spec: add gps plugin
Marc Fournier [Tue, 9 Aug 2016 11:15:15 +0000 (13:15 +0200)]
collectd.spec: add gps plugin

8 years agoMerge remote-tracking branch 'origin/pr/1346'
Marc Fournier [Tue, 9 Aug 2016 11:14:04 +0000 (13:14 +0200)]
Merge remote-tracking branch 'origin/pr/1346'

 Conflicts:
README
configure.ac
src/Makefile.am
src/collectd.conf.in
src/collectd.conf.pod
src/types.db

8 years agoWork around Solaris 10 defining label_t
Ruben Kerkhof [Tue, 9 Aug 2016 10:57:21 +0000 (12:57 +0200)]
Work around Solaris 10 defining label_t

Solaris 10 defines label_t in /usr/include/sys/machtypes.h,
unless POSIX_C_SOURCE is defined, or when __EXTENSIONS__ is defined.

Fixes #1301

8 years agowrite_tsdb: enable TCP keepalive on network socket
Marc Fournier [Sat, 13 Feb 2016 11:29:37 +0000 (12:29 +0100)]
write_tsdb: enable TCP keepalive on network socket

8 years agowrite_sensu: enable TCP keepalive on network socket
Marc Fournier [Sat, 13 Feb 2016 11:29:30 +0000 (12:29 +0100)]
write_sensu: enable TCP keepalive on network socket

8 years agowrite_riemann: enable TCP keepalive on network socket
Marc Fournier [Sat, 13 Feb 2016 11:29:21 +0000 (12:29 +0100)]
write_riemann: enable TCP keepalive on network socket

8 years agowrite_graphite: enable TCP keepalive on network socket
Marc Fournier [Sat, 13 Feb 2016 11:29:13 +0000 (12:29 +0100)]
write_graphite: enable TCP keepalive on network socket

8 years agodaemon/common.[ch]: add set_sock_opts() function
Marc Fournier [Sat, 13 Feb 2016 10:51:23 +0000 (11:51 +0100)]
daemon/common.[ch]: add set_sock_opts() function

Enables the TCP keepalive mechanism on a given socket.

This would typically be used on sockets opened by write plugins
which submit data to a remote server.

Up to now, collectd fails to notice when a remote server dies without
properly closing the network connection, leading to more and more memory
getting allocated as the values pile up in the write queue.

The keepalive values are proportional to the configured `Interval`. The
first probe is emitted `10 x Interval` seconds after the last TCP packet
was seen, and then once per `Interval` until the threshold defined by
the OS is reached.

See: http://www.tldp.org/HOWTO/html_single/TCP-Keepalive-HOWTO/#checkdeadpeers

8 years agoceph plugin: Really fix "parse_keys" test.
Florian Forster [Tue, 9 Aug 2016 08:14:03 +0000 (10:14 +0200)]
ceph plugin: Really fix "parse_keys" test.

This reverts commit 9521a596cb88b044a2f08db53520edd6e15c8d39.

8 years agocollectd.spec: fix ./configure arguments order
Marc Fournier [Mon, 8 Aug 2016 13:36:15 +0000 (15:36 +0200)]
collectd.spec: fix ./configure arguments order

8 years agocollectd.spec: fix typo, missing "%" sign
Marc Fournier [Mon, 8 Aug 2016 12:07:18 +0000 (14:07 +0200)]
collectd.spec: fix typo, missing "%" sign

8 years agoInclude collectd.h before testing.h
Ruben Kerkhof [Mon, 8 Aug 2016 11:12:08 +0000 (13:12 +0200)]
Include collectd.h before testing.h

testing.h includes system headers that set #define _FILE_OFFSET_BITS 32,
if not already defined. We define them in config.h, which is included by collectd.h

Fixes tests on 32-bit Solaris (#1301)

8 years agocollectd.spec: specify PYTHON_CONFIG on EL5
Marc Fournier [Mon, 8 Aug 2016 10:27:02 +0000 (12:27 +0200)]
collectd.spec: specify PYTHON_CONFIG on EL5

Since 4ad7200, python-config becomes mandatory. We have to explicitly
specify it's path for EL5 as we're using a non-default python
installation on this distro.

8 years agocollectd.spec: add new cpusleep plugin
Marc Fournier [Mon, 8 Aug 2016 09:58:16 +0000 (11:58 +0200)]
collectd.spec: add new cpusleep plugin

Disabled on EL5 and EL6, as it requires CLOCK_BOOTTIME only available in
recent libc versions.

8 years agoMerge remote-tracking branch 'github/pr/1845'
Florian Forster [Mon, 8 Aug 2016 06:41:04 +0000 (08:41 +0200)]
Merge remote-tracking branch 'github/pr/1845'

8 years agosrc/utils_format_json.c: Fix usage of yajl_gen_config().
Florian Forster [Sun, 7 Aug 2016 17:12:21 +0000 (19:12 +0200)]
src/utils_format_json.c: Fix usage of yajl_gen_config().

8 years agoMerge pull request #1864 from rubenk/python-2.6
trenkel [Sun, 7 Aug 2016 16:26:02 +0000 (18:26 +0200)]
Merge pull request #1864 from rubenk/python-2.6

Bump minimum required Python version to 2.6