Florian Forster [Tue, 13 Sep 2016 20:26:31 +0000 (22:26 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Florian Forster [Tue, 13 Sep 2016 08:44:46 +0000 (10:44 +0200)]
curl_json plugin: Skip unexpected non-map values.
Assume, for example, the config `Key "*/foo"`. This config expects JSON
in the form:
{
"bar": {
"foo": 1337
}
}
If the available JSON is instead:
{
"error_code": 0,
"bar": {
"foo": 1337
}
}
the code will take a look at the zero associated with "error_code" and
determine that a map (with key "foo") is expected instead. Previously
the code would continue, eventually calling `cj_get_type()` which
expects that `key->type` is a valid pointer, resulting in a segmentation
fault.
This patch does three things to ensure that this segmentation fault does
not happen again:
1. `cj_get_type()` checks its argument to make sure it is valid before
dereferencing any pointers.
2. In case a non-map is found when a map is expected, the code will
return instead of limping on.
3. After calling `cj_cb_inc_array_index()`, which may update the key,
make sure that it actually did and that key is valid now.
Fixes: #1896
Florian Forster [Mon, 12 Sep 2016 12:16:00 +0000 (14:16 +0200)]
collectd.conf(5): Document the semantics of the "TypesDB" option in more detail.
Fixed: #1241
Florian Forster [Mon, 12 Sep 2016 09:49:52 +0000 (11:49 +0200)]
contrib/migrate-4-5.px: Don't convert "ps_code" and "ps_data" to derive.
Fixes: #1687
Michael Leinartas [Thu, 8 Sep 2016 19:00:35 +0000 (14:00 -0500)]
Add missing option to write_graphite example
Signed-off-by: Florian Forster <octo@collectd.org>
Florian Forster [Sun, 11 Sep 2016 18:31:31 +0000 (20:31 +0200)]
apache plugin: End statements with semi-colons.
If only I knew why this wasn't considered a syntax error …
Florian Forster [Sun, 11 Sep 2016 08:01:10 +0000 (10:01 +0200)]
Bump version to 5.6.0; Update ChangeLog.
Florian Forster [Thu, 8 Sep 2016 06:10:54 +0000 (08:10 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Florian Forster [Wed, 7 Sep 2016 07:38:23 +0000 (09:38 +0200)]
src/types.db: Remove minimum value from "power".
The battery plugin reports negative power when the battery is discharging.
Florian Forster [Tue, 6 Sep 2016 06:42:26 +0000 (08:42 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Florian Forster [Tue, 6 Sep 2016 06:40:35 +0000 (08:40 +0200)]
Merge remote-tracking branch 'github/pr/1909' into collectd-5.5
Florian Forster [Tue, 6 Sep 2016 06:08:01 +0000 (08:08 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Marc Fournier [Mon, 5 Sep 2016 19:25:40 +0000 (21:25 +0200)]
target_set.c: rename 'MetaDataSet' option
Fixes #1910
Florian Forster [Mon, 5 Sep 2016 13:45:19 +0000 (15:45 +0200)]
plugin_dispatch_multivalue: Submit NAN when computing percantage of an empty set.
Thomas Deutschmann [Fri, 2 Sep 2016 12:59:46 +0000 (14:59 +0200)]
Fix compilation against >=xfsprogs-4.7.0
[backport of commit
225ee7bb45152c51c1c9508b2e776cef36d2682d]
Suggested-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
Gentoo-Bug: https://bugs.gentoo.org/590998
Fixes: https://github.com/collectd/collectd/issues/1877
Florian Forster [Fri, 2 Sep 2016 07:00:58 +0000 (09:00 +0200)]
network plugin: Initialize libgcrypt only when needed.
Previously, libgcrypt was initialized unconditionally in network_init(),
which may cause trouble on some systems. With this patch, gcrypt is
initialized if:
* A client socket as signing or encryption enabled, or
* a server socket has an auth_file configured.
Fixes: #1902
trenkel [Tue, 23 Aug 2016 15:18:57 +0000 (17:18 +0200)]
Merge pull request #1899 from rubenk/python-fixes-for-interactive-sessions
python plugin: Fixing possible problems with the GIL in interactive sessions.
Ruben Kerkhof [Tue, 23 Aug 2016 14:15:30 +0000 (16:15 +0200)]
Try a different way to silence GCC.
On some distro's some versions of GCC warn about the unchecked result,
even though it is casted to void.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425 for the
discussion.
Sven Trenkel [Tue, 16 Aug 2016 21:52:38 +0000 (21:52 +0000)]
python plugin: Fixing possible problems with the GIL.
If AfterFork is called after threads have been initialized.
Also handle SIGTERM while reading from an interactive session slightly more gracefully.
Ruben Kerkhof [Mon, 22 Aug 2016 19:43:15 +0000 (21:43 +0200)]
Really fix tests on Solaris
3b264ee checked for KERNEL_SOLARIS, but this is only defined if config.h is included.
Marc Fournier [Thu, 18 Aug 2016 20:58:39 +0000 (22:58 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Marc Fournier [Thu, 18 Aug 2016 20:53:43 +0000 (22:53 +0200)]
Changelog: fix unresolved merge conflict introduced in
dc2eb04
Removed the conflict markers left over, and copy-pasted the changes
added in
c0f5748.
Marc Fournier [Thu, 18 Aug 2016 20:21:47 +0000 (22:21 +0200)]
collectd.spec: mention new cpusleep plugin in changelog
Marc Fournier [Tue, 16 Aug 2016 13:00:59 +0000 (15:00 +0200)]
Merge branch 'collectd-5.5' into collectd-5.6
Marc Fournier [Tue, 16 Aug 2016 12:58:38 +0000 (14:58 +0200)]
collectd.spec: increment version number in changelog
Marc Fournier [Tue, 16 Aug 2016 12:50:50 +0000 (14:50 +0200)]
collectd.spec: remove misleading items from changelog
Sven Trenkel [Mon, 15 Aug 2016 21:47:34 +0000 (21:47 +0000)]
python plugin: Don't shut down the Python interpreter as long as there might be callback methods around.
Florian Forster [Tue, 16 Aug 2016 05:19:31 +0000 (07:19 +0200)]
Merge remote-tracking branch 'github/pr/1890' into collectd-5.6
Florian Forster [Tue, 16 Aug 2016 05:09:45 +0000 (07:09 +0200)]
ceph plugin: Assert that the strings on the stack are non-NULL.
The static analyzer is whining about passing NULLs to strcmp().
Florian Forster [Tue, 16 Aug 2016 04:57:24 +0000 (06:57 +0200)]
ceph plugin: Guard against g_num_daemons being zero.
clang scan-build flags this, because this variable is used to declare VLAs.
Sebastian Harl [Mon, 15 Aug 2016 18:59:05 +0000 (20:59 +0200)]
write_kafka: Fix misleading indentation
Reported by GCC-6 with the `-Werror=misleading-indentation` option.
Thanks for Lucas Nussbaum for reporting this issue!
Fixes https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=831194
Sven Trenkel [Mon, 15 Aug 2016 18:55:44 +0000 (18:55 +0000)]
python plugin: Unregister all internal callback lists before Python interpreter shutdown.
Sven Trenkel [Mon, 15 Aug 2016 18:53:28 +0000 (18:53 +0000)]
python plugin: Properly deal with identifier being NULL in a log callback.
Sven Trenkel [Mon, 15 Aug 2016 18:51:25 +0000 (18:51 +0000)]
python plugin: Grab GIL before freeing callbacks. If their refcount reaches 0 Python code will be executed.
Florian Forster [Mon, 15 Aug 2016 17:57:30 +0000 (19:57 +0200)]
Merge remote-tracking branch 'github/pr/1879'
Florian Forster [Mon, 15 Aug 2016 17:55:49 +0000 (19:55 +0200)]
Merge remote-tracking branch 'github/pr/1883'
Florian Forster [Mon, 15 Aug 2016 17:54:08 +0000 (19:54 +0200)]
CONTRIBUTING.md: Address review comments.
Florian Forster [Mon, 15 Aug 2016 17:51:35 +0000 (19:51 +0200)]
README: Point to CONTRIBUTING.md for bugs and PRs.
Florian Forster [Mon, 15 Aug 2016 17:47:37 +0000 (19:47 +0200)]
CONTRIBUTING.md: Address review comments.
Ruben Kerkhof [Mon, 15 Aug 2016 13:55:22 +0000 (15:55 +0200)]
configure.ac: rewrite liblua detection
Not all distro's have a lua.pc file.
This looks for the most common ones, newest versions first.
Ruben Kerkhof [Thu, 11 Aug 2016 17:38:17 +0000 (19:38 +0200)]
support older versions of riemann-c-client
riemann_client_set_timeout() was added in 1.8.0, but this
version hasn't landed in all distro's yet.
Fixes #986
Ruben Kerkhof [Mon, 15 Aug 2016 07:52:31 +0000 (09:52 +0200)]
scanner.l: remove GCC pragma
GCC on RHEL5 doesn't recognize it and warns about it
scanner.l:36: warning: ignoring #pragma GCC diagnostic
make[4]: *** [scanner.lo] Error 1
CC parser.lo
Florian Forster [Mon, 15 Aug 2016 06:16:51 +0000 (08:16 +0200)]
CONTRIBUTING.md: Add operating system / distribution.
Florian Forster [Mon, 15 Aug 2016 06:16:29 +0000 (08:16 +0200)]
Add a GitHub issue template.
Florian Forster [Mon, 15 Aug 2016 05:41:24 +0000 (07:41 +0200)]
GenericJMX plugin: Suppress "unchecked conversion" warning.
The internet tells me there is no elegant way around this.
Ruben Kerkhof [Sun, 14 Aug 2016 20:53:21 +0000 (22:53 +0200)]
scanner.l: really fix pragma
Ruben Kerkhof [Sun, 14 Aug 2016 20:25:53 +0000 (22:25 +0200)]
Fix build with older GCCs
They warn for unknown pragmas
Ruben Kerkhof [Sun, 14 Aug 2016 19:41:00 +0000 (21:41 +0200)]
Merge pull request #1874 from rubenk/utils-dns-fix-compiler-warning
utils_dns.c: fix compiler warning
Florian Forster [Sun, 14 Aug 2016 19:36:27 +0000 (21:36 +0200)]
ceph plugin: Rewrite the BUFFER_ADD() macro.
I'm hoping that this fixes a potential integer underrun that may occur
when unconditionally subtracting strlen(dest) from sizeof(dest).
Issue: #1835
Ruben Kerkhof [Sun, 14 Aug 2016 19:32:00 +0000 (21:32 +0200)]
liboconfig: silence warnings in generated code
Lex generates these, nothing we can do about them
Ruben Kerkhof [Sun, 14 Aug 2016 19:10:49 +0000 (21:10 +0200)]
processes plugin: fix 3 compiler warnings on OS X
processes.c:1569:26: warning: comparison of integers of different signs: 'int' and 'mach_msg_type_number_t' (aka 'unsigned int') [-Wsign-compare]
for (int pset = 0; pset < pset_list_len; pset++)
~~~~ ^ ~~~~~~~~~~~~~
processes.c:1590:27: warning: comparison of integers of different signs: 'int' and 'mach_msg_type_number_t' (aka 'unsigned int') [-Wsign-compare]
for (int task = 0; task < task_list_len; task++)
~~~~ ^ ~~~~~~~~~~~~~
processes.c:1688:32: warning: comparison of integers of different signs: 'int' and 'mach_msg_type_number_t' (aka 'unsigned int') [-Wsign-compare]
for (int thread = 0; thread < thread_list_len; thread++)
~~~~~~ ^ ~~~~~~~~~~~~~~~
Florian Forster [Sun, 14 Aug 2016 19:03:23 +0000 (21:03 +0200)]
Merge remote-tracking branch 'github/master'
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
Ruben Kerkhof [Sun, 14 Aug 2016 18:53:33 +0000 (20:53 +0200)]
cpu plugin: fix compiler warning on OS X
cpu.c:593:24: warning: comparison of integers of different signs: 'int' and 'mach_msg_type_number_t' (aka 'unsigned int') [-Wsign-compare]
for (int cpu = 0; cpu < cpu_list_len; cpu++)
~~~ ^ ~~~~~~~~~~~~
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
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);
^~~~~~
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);
^~~~~~
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) {
~ ^ ~~~
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() {
^~~~~~~~~~~~~~~
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
Ruben Kerkhof [Sun, 14 Aug 2016 13:55:17 +0000 (15:55 +0200)]
README: bump Python requirement to 2.6
Ruben Kerkhof [Sun, 14 Aug 2016 13:54:24 +0000 (15:54 +0200)]
Lua plugin: add to rpm specfile
Ruben Kerkhof [Sun, 14 Aug 2016 13:48:55 +0000 (15:48 +0200)]
Lua plugin: add to README
Ruben Kerkhof [Sun, 14 Aug 2016 13:10:04 +0000 (15:10 +0200)]
Lua plugin: make function array const
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.
Ruben Kerkhof [Sun, 14 Aug 2016 12:43:07 +0000 (14:43 +0200)]
collectd-lua(5) fix syntax error in pod
Ruben Kerkhof [Sun, 14 Aug 2016 12:14:40 +0000 (14:14 +0200)]
Lua plugin: add section to collectd.conf(5)
Ruben Kerkhof [Sun, 14 Aug 2016 11:58:14 +0000 (13:58 +0200)]
Lua plugin: s/Collectd/collectd/g in manpage
Ruben Kerkhof [Sun, 14 Aug 2016 11:56:16 +0000 (13:56 +0200)]
Lua plugin: fix build with Lua 5.1
Ruben Kerkhof [Sun, 14 Aug 2016 11:42:41 +0000 (13:42 +0200)]
Lua plugin: add a manpage
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
Ruben Kerkhof [Sun, 14 Aug 2016 09:59:03 +0000 (11:59 +0200)]
Lua plugin: use existing type for functions array
Florian Forster [Sun, 14 Aug 2016 07:33:32 +0000 (09:33 +0200)]
Merge remote-tracking branch 'github/pr/1882'
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
Ruben Kerkhof [Sat, 13 Aug 2016 16:51:55 +0000 (18:51 +0200)]
liboconfig: make function static
Ruben Kerkhof [Sat, 13 Aug 2016 16:45:10 +0000 (18:45 +0200)]
configfile.h: remove unused declaration
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.
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.
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.
Ruben Kerkhof [Sat, 13 Aug 2016 14:25:06 +0000 (16:25 +0200)]
ceph plugin: just continue
Ruben Kerkhof [Sat, 13 Aug 2016 14:21:32 +0000 (16:21 +0200)]
barometer plugin: add missing include
Ruben Kerkhof [Sat, 13 Aug 2016 14:21:01 +0000 (16:21 +0200)]
collectctl: define LOCALSTATEDIR if not defined
Ruben Kerkhof [Sat, 13 Aug 2016 13:58:04 +0000 (15:58 +0200)]
write_log plugin: mark unused attribute as unused
Ruben Kerkhof [Sat, 13 Aug 2016 13:55:39 +0000 (15:55 +0200)]
treewide: use designated initializers for user_data
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.
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.
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
Ruben Kerkhof [Sat, 13 Aug 2016 09:39:29 +0000 (11:39 +0200)]
zone plugin: fix typo in error message
Ruben Kerkhof [Sat, 13 Aug 2016 09:28:36 +0000 (11:28 +0200)]
collectd.conf(5): add Host option for curl_json
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
Julien Ammous [Fri, 12 Aug 2016 20:10:59 +0000 (22:10 +0200)]
Add a Lua plugin for Collectd
Florian Forster [Fri, 12 Aug 2016 15:16:19 +0000 (17:16 +0200)]
CONTRIBUTING.md: Give more concrete advice on writing bugs and PRs.
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.
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.
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
Fᴀʙɪᴇɴ Wᴇʀɴʟɪ [Fri, 12 Aug 2016 11:04:00 +0000 (13:04 +0200)]
address @octo and @rubenk's comments
Change-Id: I5661a555d95227e63b3c873a0fd0b2360a040342
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
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
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.
Ruben Kerkhof [Thu, 11 Aug 2016 16:40:40 +0000 (18:40 +0200)]
Merge branch 'collectd-5.5'