ceph plugin: Use compound literals to initialize a VLA.
This also moves the DEBUG() statement before the sanity check in an
attempt to make scan-build happy: scan-build is under the impression
that the DEBUG() macro would write to the g_num_daemons global variable.
While we're at it, use PRIu32 to print the uint32_t.
Issue: #1835
This also moves the DEBUG() statement before the sanity check in an
attempt to make scan-build happy: scan-build is under the impression
that the DEBUG() macro would write to the g_num_daemons global variable.
While we're at it, use PRIu32 to print the uint32_t.
Issue: #1835
Merge branch 'collectd-5.6'
Merge branch 'collectd-5.5' into collectd-5.6
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
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
df plugin: Guard strcmp() against being passed NULL pointers.
Issue: #1835
Issue: #1835
write_http plugin: Add assertion for scan-build.
Issue: #1835
Issue: #1835
Merge remote-tracking branch 'github/pr/1901'
ceph plugin: Ensure that at least one daemon is configured in cconn_main_loop().
This addresses a scan-build issue.
This addresses a scan-build issue.
Merge pull request #1904 from sandebert/patch-1
Fixed two small typos
Fixed two small typos
Fixed two small typos
grpc plugin: Rename "DispatchValues" to "PutValues".
This is done to use a naming closer to that of the unixsock and exec
plugins.
This is done to use a naming closer to that of the unixsock and exec
plugins.
Merge pull request #1899 from rubenk/python-fixes-for-interactive-sessions
python plugin: Fixing possible problems with the GIL in interactive sessions.
python plugin: Fixing possible problems with the GIL in interactive sessions.
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.
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.
collectd.spec: add hugepages plugin
collectd.spec: adjust version & changelog entries for master branch
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.
If AfterFork is called after threads have been initialized.
Also handle SIGTERM while reading from an interactive session slightly more gracefully.
Merge branch 'hugepages'
Merge branch 'collectd-5.6'
Really fix tests on Solaris
3b264ee checked for KERNEL_SOLARIS, but this is only defined if config.h is included.
3b264ee checked for KERNEL_SOLARIS, but this is only defined if config.h is included.
Merge branch 'collectd-5.5' into collectd-5.6
Changelog: fix unresolved merge conflict introduced in dc2eb04
Removed the conflict markers left over, and copy-pasted the changes
added in c0f5748.
Removed the conflict markers left over, and copy-pasted the changes
added in c0f5748.
collectd.spec: mention new cpusleep plugin in changelog
Remove empty NEWS file (#1893)
Not needed since we use Automake in foreign mode.
Not needed since we use Automake in foreign mode.
Remove TODO, it's way out of date (#1892)
hugepages: check for error if readdir returns NULL
Change-Id: Ib361b648407c7052218c1f6b9b624cb7aa799634
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
Change-Id: Ib361b648407c7052218c1f6b9b624cb7aa799634
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
hugepages: typo fix in 2nd pathconf() check
Change-Id: Ie4ceb0ec4b55e60fcffb1d59d33a5711366eb2f7
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
Change-Id: Ie4ceb0ec4b55e60fcffb1d59d33a5711366eb2f7
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
hugepages: rework 2
Fix typo in .pod file.
Change char * strings to static const char [].
Change INFO() to DEBUG() in 1 place.
Removed unnecessary initialisations & casts.
Fixed ignored error returns from some funcs.
Actually use result returned from pathconf().
Change-Id: I0b59af4eb8afd29141abfa9233ca1d4a8d19d0d1
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
Fix typo in .pod file.
Change char * strings to static const char [].
Change INFO() to DEBUG() in 1 place.
Removed unnecessary initialisations & casts.
Fixed ignored error returns from some funcs.
Actually use result returned from pathconf().
Change-Id: I0b59af4eb8afd29141abfa9233ca1d4a8d19d0d1
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
disk plugin: fix typo in comment
hugepages: rework
Changed hugepage metric type and type instances.
Made a single entry in types.db for "free" and
"used" hugepages.
Calculate the used hugepages.
Removed read_syshugepage_dir; replaced with
walk_directory.
Cleared up descriptions in .pod.
Made the .conf plugin option names less cryptic.
Linux-only plugin; changed configure.ac accordingly.
Stripped function declarations and header includes
that are not used.
Tidied up globals and made some globals local.
Removed some hardcoded values and fixed spacing.
Other general tidy-ups.
Change-Id: Id0243397d3fd4ac1be90266b266341318c05c903
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
Changed hugepage metric type and type instances.
Made a single entry in types.db for "free" and
"used" hugepages.
Calculate the used hugepages.
Removed read_syshugepage_dir; replaced with
walk_directory.
Cleared up descriptions in .pod.
Made the .conf plugin option names less cryptic.
Linux-only plugin; changed configure.ac accordingly.
Stripped function declarations and header includes
that are not used.
Tidied up globals and made some globals local.
Removed some hardcoded values and fixed spacing.
Other general tidy-ups.
Change-Id: Id0243397d3fd4ac1be90266b266341318c05c903
Signed-off-by: Kim Jones <kim-marie.jones@intel.com>
Merge branch 'collectd-5.5' into collectd-5.6
collectd.spec: increment version number in changelog
collectd.spec: remove misleading items from changelog
Merge branch 'collectd-5.6'
python plugin: Don't shut down the Python interpreter as long as there might be callback methods around.
Merge remote-tracking branch 'github/pr/1890' into collectd-5.6
ceph plugin: Assert that the strings on the stack are non-NULL.
The static analyzer is whining about passing NULLs to strcmp().
The static analyzer is whining about passing NULLs to strcmp().
ceph plugin: Guard against g_num_daemons being zero.
clang scan-build flags this, because this variable is used to declare VLAs.
clang scan-build flags this, because this variable is used to declare VLAs.
Merge pull request #1890 from trenkel/master
python plugin: Various shutdown fixes.
python plugin: Various shutdown fixes.
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
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
8 years agopython plugin: Unregister all internal callback lists before Python interpreter shutdown.
python plugin: Unregister all internal callback lists before Python interpreter shutdown.
python plugin: Properly deal with identifier being NULL in a log callback.
python plugin: Grab GIL before freeing callbacks. If their refcount reaches 0 Python code will be executed.
Merge remote-tracking branch 'github/pr/1879'
Merge remote-tracking branch 'github/pr/1883'
CONTRIBUTING.md: Address review comments.
README: Point to CONTRIBUTING.md for bugs and PRs.
CONTRIBUTING.md: Address review comments.
configure.ac: rewrite liblua detection
Not all distro's have a lua.pc file.
This looks for the most common ones, newest versions first.
Not all distro's have a lua.pc file.
This looks for the most common ones, newest versions first.
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
riemann_client_set_timeout() was added in 1.8.0, but this
version hasn't landed in all distro's yet.
Fixes #986
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
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
CONTRIBUTING.md: Add operating system / distribution.
Add a GitHub issue template.
GenericJMX plugin: Suppress "unchecked conversion" warning.
The internet tells me there is no elegant way around this.
The internet tells me there is no elegant way around this.
scanner.l: really fix pragma
Fix build with older GCCs
They warn for unknown pragmas
They warn for unknown pragmas
Merge pull request #1874 from rubenk/utils-dns-fix-compiler-warning
utils_dns.c: fix compiler warning
utils_dns.c: fix compiler warning
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
I'm hoping that this fixes a potential integer underrun that may occur
when unconditionally subtracting strlen(dest) from sizeof(dest).
Issue: #1835
liboconfig: silence warnings in generated code
Lex generates these, nothing we can do about them
Lex generates these, nothing we can do about them
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++)
~~~~~~ ^ ~~~~~~~~~~~~~~~
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++)
~~~~~~ ^ ~~~~~~~~~~~~~~~
Merge remote-tracking branch 'github/master'
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
The variable is used as size for variable length arrays (VLAs), which
cannot have negative size.
Issue: #1835
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++)
~~~ ^ ~~~~~~~~~~~~
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++)
~~~ ^ ~~~~~~~~~~~~
write_http plugin: Sanity check arguments to wh_write_command().
Issue: #1835
Issue: #1835
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);
^~~~~~
utils_complain.c:56:40: warning: format string is not a string literal
[-Wformat-nonliteral]
vsnprintf (message, sizeof (message), format, ap);
^~~~~~
libcollectdclient: annotate vprintf-like function
client.c:126:21: warning: format string is not a string literal [-Wformat-nonliteral]
status = vprintf (format, ap);
^~~~~~
client.c:126:21: warning: format string is not a string literal [-Wformat-nonliteral]
status = vprintf (format, ap);
^~~~~~
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) {
~ ^ ~~~
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) {
~ ^ ~~~
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() {
^~~~~~~~~~~~~~~
lua.c: In function ‘module_register’:
lua.c:588:6: warning: old-style function definition
[-Wold-style-definition]
void module_register() {
^~~~~~~~~~~~~~~
Merge pull request #1885 from rubenk/lua-plugin
Add a Lua plugin for Collectd
Add a Lua plugin for Collectd
README: bump Python requirement to 2.6
Lua plugin: add to rpm specfile
Lua plugin: add to README
Lua plugin: make function array const
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.
From the API docs:
Any array of luaL_Reg must end with a sentinel entry in which both name
and func are NULL.
collectd-lua(5) fix syntax error in pod
Lua plugin: add section to collectd.conf(5)
Lua plugin: s/Collectd/collectd/g in manpage
Lua plugin: fix build with Lua 5.1
Lua plugin: add a manpage
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
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
Lua plugin: use existing type for functions array
Merge remote-tracking branch 'github/pr/1882'
Merge pull request #1887 from rubenk/make-xfs-optional
Add an option to disable building with XFS support
Add an option to disable building with XFS support
liboconfig: make function static
configfile.h: remove unused declaration
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.
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.
collectdmon: define PREFIX and LOCALSTATEDIR
Not an issue in practice, but this helps when running the code through
lint.
Not an issue in practice, but this helps when running the code through
lint.
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.
This won't happen in practice since ./configure sets it, but it isn't
set when running the code through lint.
ceph plugin: just continue
barometer plugin: add missing include
collectctl: define LOCALSTATEDIR if not defined
write_log plugin: mark unused attribute as unused
treewide: use designated initializers for user_data
openldap plugin: replace comma with semicolon
This incidentally worked, but it is not a good idea.
This incidentally worked, but it is not a good idea.
Lua plugin: wrap debug code in COLLECT_DEBUG
No use formatting the string if we're not going to use it.
No use formatting the string if we're not going to use it.
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
Right now, if you have the xfs development headers installed,
they will be picked up. Add an option to disable this behaviour.
Fixes #1878
zone plugin: fix typo in error message
collectd.conf(5): add Host option for curl_json
configure.ac: check for ExtUtils::MakeMaker
The perl bindings need this module so perl can generate Makefile.pl.
Fixes #1886
The perl bindings need this module so perl can generate Makefile.pl.
Fixes #1886
Add a Lua plugin for Collectd
CONTRIBUTING.md: Give more concrete advice on writing bugs and PRs.