Merge branch 'collectd-4.7'
Merge branch 'collectd-4.6' into collectd-4.7
rrdtool plugin: Make sure the initialization is run only once.
Thanks to Amit Gupta for reporting this bug!
Thanks to Amit Gupta for reporting this bug!
src/plugin.c: Initiate the threshold checking again.
Hi,
I have the same problem in my instalation, exactly the same scenario, I found a
possible explanation in the plugin.c module. While in the 4.5 branch exists a
callback to function ut_check_threshold (defined in utils_threshold.c), in the
4.6.2 (and also in 4.6.1, I think), the callback is missing, so threshold
checking never runs.
In fact, a grep -r ut_check_threshold over src dir, only show the definition of
the function in ut_check_threshold module.
I'm not sure if it's really a bug, but when I patched my code, it works fine
for me :) I'm using the 4.6.2 version from tar.gz.
Best regards,
Andrés
The regression was introduced in 65954d9b.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Hi,
I have the same problem in my instalation, exactly the same scenario, I found a
possible explanation in the plugin.c module. While in the 4.5 branch exists a
callback to function ut_check_threshold (defined in utils_threshold.c), in the
4.6.2 (and also in 4.6.1, I think), the callback is missing, so threshold
checking never runs.
In fact, a grep -r ut_check_threshold over src dir, only show the definition of
the function in ut_check_threshold module.
I'm not sure if it's really a bug, but when I patched my code, it works fine
for me :) I'm using the 4.6.2 version from tar.gz.
Best regards,
Andrés
The regression was introduced in 65954d9b.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
configure.in: Be more verbose if libperl exists but doesn't support ithreads.
configure.in, java plugin: Instruct `find' to return files only.
Hopefully this solves this problem:
/home/hudson/jdk/sample/javac -d "." "./org/collectd/api"/*.java
/bin/sh: /home/hudson/jdk/sample/javac: is a directory
Hopefully this solves this problem:
/home/hudson/jdk/sample/javac -d "." "./org/collectd/api"/*.java
/bin/sh: /home/hudson/jdk/sample/javac: is a directory
types.db: Sort the file alphabetically.
src/Makefile.am: Added missing backslash before newline.
The list of manpages is split into several lines. One of those lines was
missing the backslash which caused the list to be cut after collectd-java.5,
i.e. several of the manpages would have not been built at all.
Thanks to 'dh_install --fail-missing' for catching that ;-)
The list of manpages is split into several lines. One of those lines was
missing the backslash which caused the list to be cut after collectd-java.5,
i.e. several of the manpages would have not been built at all.
Thanks to 'dh_install --fail-missing' for catching that ;-)
Merge branch 'collectd-4.7'
Merge remote branch 'tokkee/sh/collectd-4.7' into collectd-4.7
bindings/java/Makefile.am: Install to $pkgdatadir/java/.
And don't use $(builddir): It may be an empty string, making handling of this
variable cumbersome.
And don't use $(builddir): It may be an empty string, making handling of this
variable cumbersome.
collectd.conf: Added a sample config for the memcachec plugin.
... copied from the manpage.
... copied from the manpage.
collectd.conf: Added missing whitespace in sample table configuration.
WTF happened there? ...
WTF happened there? ...
configure: Added support for --enable-<plugin>=force.
This may be used to force a plugin to be built, no matter what the dependency
check yielded. I.e. this is basically the same --enable-<plugin> before commit
9276a81328091fdebc833eb10580d53bc51659db (configure.in: Let configure bail out
on missing dependencies).
This may be used to force a plugin to be built, no matter what the dependency
check yielded. I.e. this is basically the same --enable-<plugin> before commit
9276a81328091fdebc833eb10580d53bc51659db (configure.in: Let configure bail out
on missing dependencies).
configure: Added the --enable-all-plugins option.
This option may be used to enable or disable all plugins by default. The
default may be overwritten by explicitly enabling or disabling a plugin using
the --enable-<plugin> option.
This option may be used to enable or disable all plugins by default. The
default may be overwritten by explicitly enabling or disabling a plugin using
the --enable-<plugin> option.
memcachec plugin: Fixed a typo in a comment.
Build system: Build and install .java files in bindings/java/ automatically.
collectd.conf(5): Add documentation for the memcachec plugin.
README: Fix a typo.
bindings/Makefile: Include java/ subdir in the dist tarball.
contrib/README: Added a short description for collectd-{network,unixsock}.py.
README: Added missing plugins and libraries.
That is, the fscache, memcachec, table and uptime plugins and libganglia,
libgcrypt and libmemcached.
That is, the fscache, memcachec, table and uptime plugins and libganglia,
libgcrypt and libmemcached.
collectd.conf: Added fscache, memcachec, table and ted plugins.
configure: Sort plugins alphabetically in the summary output.
ChangeLog: Changed date to May 11th; Updated version.
Merge branch 'collectd-4.6' into collectd-4.7
Conflicts:
ChangeLog
Conflicts:
ChangeLog
Merge branch 'collectd-4.5' into collectd-4.6
Conflicts:
ChangeLog
version-gen.sh
Conflicts:
ChangeLog
version-gen.sh
Bumped version to 4.5.4; Updated ChangeLog.
Merge branch 'collectd-4.7'
couchdb plugin: Add plugin to fetch data from a CouchDB and parse its contents.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'collectd-4.6' into collectd-4.7
Merge branch 'collectd-4.5' into collectd-4.6
configure.in: Hint towards the CFLAGS instead of using $CC.
configure.in: Add hint for building solaris 64-bit binary.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
configure.in: Check libgcrypt minimum version 1.2.0.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
swap module: Include <vm/anon.h> on Solaris.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
configure.in: Check for `mysql_get_server_version' in libmyql.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
configure.in: Use AC_HEADER_STDBOOL
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
README: Document how to build the Java plugin.
configure.in: Simplified configuration of the Java plugin.
The configure script now uses `find' to search the JAVA_HOME directory for the
files `jni.h', `jni_md.h', and `libjvm.so'. Not nice, but I don't know how else
to solve this problem.
The configure script now uses `find' to search the JAVA_HOME directory for the
files `jni.h', `jni_md.h', and `libjvm.so'. Not nice, but I don't know how else
to solve this problem.
Merge branch 'collectd-4.5' into collectd-4.6
Conflicts:
src/Makefile.am
Conflicts:
src/Makefile.am
Build system: Straighten up building of the DF plugin.
In rare cases, e. g. Solaris, getmntent is available but neither the one nor
the two argument version could be recognized. This lead to `cu_mount_getlist'
returning NULL without an error, leading to the df plugin fail without notice.
While at it I re-implemented the dependency checking of the DF plugin to match
the proprocessor logic in utils_mount.c.
In rare cases, e. g. Solaris, getmntent is available but neither the one nor
the two argument version could be recognized. This lead to `cu_mount_getlist'
returning NULL without an error, leading to the df plugin fail without notice.
While at it I re-implemented the dependency checking of the DF plugin to match
the proprocessor logic in utils_mount.c.
libcollectdclient: Fix a typo.
network plugin: Fix use of a uninitialized variable.
This only happened if debugging was enabled.
This only happened if debugging was enabled.
Merge branch 'collectd-4.6' into collectd-4.7
Merge branch 'collectd-4.5' into collectd-4.6
uuid plugin: Pass `int' to `isxdigit'.
Fixes compilation on NetBSD and possibly other systems.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Fixes compilation on NetBSD and possibly other systems.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
tcpconns plugin: Compilation fixes for NetBSD.
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'collectd-4.6' into collectd-4.7
libcollectdclient: Copy `sstrerror' from src/common.c.
I don't want to simply include common.h, since that pulls in a lot of
other daemon-related headers..
I don't want to simply include common.h, since that pulls in a lot of
other daemon-related headers..
Restructure the --enable-standards option.
On Debian GNU/Linux (testing) this works. Let's see how other
systems hold up.
On Debian GNU/Linux (testing) this works. Let's see how other
systems hold up.
src/Makefile.am: Add standards.h to the sources.
iptables plugin: Initialize ip_version.
iptables.c: In function 'iptables_config':
iptables.c:99: warning: 'ip_version' is used uninitialized in this function
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
iptables.c: In function 'iptables_config':
iptables.c:99: warning: 'ip_version' is used uninitialized in this function
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Merge branch 'collectd-4.6' into collectd-4.7
Set process vmem_size and stack_size on FreeBSD
Fixes:
processes.c: In function 'ps_read':
processes.c:328: warning: 'pse.vmem_size' is used uninitialized in this function
processes.c:1300: note: 'pse.vmem_size' was declared here
processes.c:330: warning: 'pse.stack_size' is used uninitialized in this function
processes.c:1300: note: 'pse.stack_size' was declared here
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Cherry-picked *again* because the initial commit to the collectd-4.5
branch was incorrect. collectd-4.6 is the branch this should be in.
Conflicts:
src/processes.c
Fixes:
processes.c: In function 'ps_read':
processes.c:328: warning: 'pse.vmem_size' is used uninitialized in this function
processes.c:1300: note: 'pse.vmem_size' was declared here
processes.c:330: warning: 'pse.stack_size' is used uninitialized in this function
processes.c:1300: note: 'pse.stack_size' was declared here
Signed-off-by: Doug MacEachern <dougm@hyperic.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Cherry-picked *again* because the initial commit to the collectd-4.5
branch was incorrect. collectd-4.6 is the branch this should be in.
Conflicts:
src/processes.c
Merge branch 'collectd-4.6' into collectd-4.7
Merge branch 'collectd-4.5' into collectd-4.6
processes plugin: Fix compilation issues under OpenBSD.
Unfortunately OpenBSD support is non-trivial to add, so we'll keep that for
later.
Unfortunately OpenBSD support is non-trivial to add, so we'll keep that for
later.
Merge branch 'collectd-4.6' into collectd-4.7
Merge branch 'collectd-4.5' into collectd-4.6
rrdtool plugin: Make absolutely sure two local variables are initialized.
To make the compiler happy.
To make the compiler happy.
Build system: Add the --enable-standards configure option.
Merge branch 'collectd-4.6' into collectd-4.7
Conflicts:
src/filter_chain.c
src/meta_data.c
src/target_notification.c
src/target_replace.c
src/target_set.c
Conflicts:
src/filter_chain.c
src/meta_data.c
src/target_notification.c
src/target_replace.c
src/target_set.c
bind plugin: Fixes for FreeBSD 7.1
X/Open is needed for strptime,
sys/select.h is needed for some libcurl versions, and
mktime is the POSIX variant of timegm (+ localization).
X/Open is needed for strptime,
sys/select.h is needed for some libcurl versions, and
mktime is the POSIX variant of timegm (+ localization).
Various: Remove strict standards compliance defines.
ntpd plugin: Fix dereference of type-punned pointer.
Merge branch 'collectd-4.5' into collectd-4.6
processes plugin: Comment out nonexistent struct members.
We should reintroduce those values eventually.
We should reintroduce those values eventually.
memory plugin: Fix a formatstring error.
email plugin: Don't assume `pthread_t' is a `unsigned long'.
ChangeLog: Added information about mysql lock statistics.
AUTHORS: Added Rodolphe.
AUTHORS: Added Marco.
iptables plugin: Use the same enum everywhere.
iptables plugin: Add support for ip6tables.
Here is a stub but I have some trouble in making it work with "Chain6"
rules, maybe I don't know exactely how to deal with configuration keys.
I get "collectd[4887]: Plugin `iptables' did not register for value
`Chain6'". Is there something I'm forgetting?
There is another issue, the naming shema. I temporally changed the ipv6
vl.plugin to "ip6tables" in the meantime. Options are:
- different vl.plugin if possible (backward compatible)
- new vl.plugin_instance name schema with ip protocol (not backward
compatible)
- new vl.type "ip6t_packets" and "ip6t_bytes" (backward compatible but
taints the types.db with useless data)
A note about the code: I created two different submit_chain and
submit_match because using void pointers (and casting them afterwards)
in a single function it's a little bit obscure and complicated with no
real advantage. Sorry for some code duplication but in my opinion this
is smartest way.
Let me know your opinion, thank you.
Regards,
Marco
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Here is a stub but I have some trouble in making it work with "Chain6"
rules, maybe I don't know exactely how to deal with configuration keys.
I get "collectd[4887]: Plugin `iptables' did not register for value
`Chain6'". Is there something I'm forgetting?
There is another issue, the naming shema. I temporally changed the ipv6
vl.plugin to "ip6tables" in the meantime. Options are:
- different vl.plugin if possible (backward compatible)
- new vl.plugin_instance name schema with ip protocol (not backward
compatible)
- new vl.type "ip6t_packets" and "ip6t_bytes" (backward compatible but
taints the types.db with useless data)
A note about the code: I created two different submit_chain and
submit_match because using void pointers (and casting them afterwards)
in a single function it's a little bit obscure and complicated with no
real advantage. Sorry for some code duplication but in my opinion this
is smartest way.
Let me know your opinion, thank you.
Regards,
Marco
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
ChangeLog: Updated the change log for 4.7.
Merge branch 'collectd-4.6'
Conflicts:
src/memcached.c
Conflicts:
src/memcached.c
Merge branch 'collectd-4.5' into collectd-4.6
irq plugin: Force 32bit wrap-around.
battery plugin: Fix a typo.
Merge branch 'ek/fscache'
AUTHORS: Added Edward “Koko” Konetzko.
fscache plugin: Simplyfied the parsing code.
configure: Fixed the check for broken Perl_load_module().
Do not initialize AC_CACHE_CHECK cache-id's - that'd be the same as having the
initial value in the cache. This was introduced in commit 61c19cc1.
Do not initialize AC_CACHE_CHECK cache-id's - that'd be the same as having the
initial value in the cache. This was introduced in commit 61c19cc1.
fscache plugin: Add new plugin for Linux' file-system based caching framework.
Tried to submit the patch via "git send-mail" but I don't think it worked if
you already have the patch disregard the attachment.
Looking forward to your feedback, I am sure there are a few issues its been a
few years since I programmed in C. I have been running this in my test lab at
work for a few days now with no issues.
With 62 metrics I would like to modify the code to group them by their
classification and possibly add configuration support. If the changes are
finished this weekend is it ok to send an updated patch?
Thanks
Edward
Signed-off-by: Edward "Koko" Konetzko <konetzed@quixoticagony.com>
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Tried to submit the patch via "git send-mail" but I don't think it worked if
you already have the patch disregard the attachment.
Looking forward to your feedback, I am sure there are a few issues its been a
few years since I programmed in C. I have been running this in my test lab at
work for a few days now with no issues.
With 62 metrics I would like to modify the code to group them by their
classification and possibly add configuration support. If the changes are
finished this weekend is it ok to send an updated patch?
Thanks
Edward
Signed-off-by: Edward "Koko" Konetzko <konetzed@quixoticagony.com>
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
Merge branch 'ag/apache'
apache plugin: Be more verbose when automatically determine the server software.
apache plugin: Replace C++-style comments.
apache plugin: Use the HTTP header to determine the server software.
On Wed, Apr 22, 2009 at 1:53 PM, Florian Forster <octo@verplant.org> wrote:
> I think we have two options left:
>
> - Set a header callback using the CURLOPT_HEADERFUNCTION option and
> look for the <91>Server<92> header field. If it contains <93>lighttpd<94>, assume
> lighttpd, Apache otherwise.
>
> - Let the user configure which server software he's using.
>
> The two could be combined, of course: Use the user's setting if he has
> given one, (try to) determine the server software automatically if not.
>
> What do you think?
yeah this sounds good. While I thought about parsing the headers
initially but then the server headers can easily be changed, so I
wasn't sure about this approach earlier. Combing this with the user
specified server configuration value seems like the best solution.
Do find the patch attached. I am using st->server_type variable which
will be set to APACHE or LIGHTTPD based on the following logic:
- If the user has specified Server element in the conf file and it is
"apache" or "lighttpd", then set st->server_type variable
appropriately, otherwise ignore the Server value
- Parse the headers (only if the Server element is NULL or invalid) to
determine the type and set the st->server_type variable accordingly
- if st->server_type is not set as yet, then default it to apache
Regards
Amit
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
On Wed, Apr 22, 2009 at 1:53 PM, Florian Forster <octo@verplant.org> wrote:
> I think we have two options left:
>
> - Set a header callback using the CURLOPT_HEADERFUNCTION option and
> look for the <91>Server<92> header field. If it contains <93>lighttpd<94>, assume
> lighttpd, Apache otherwise.
>
> - Let the user configure which server software he's using.
>
> The two could be combined, of course: Use the user's setting if he has
> given one, (try to) determine the server software automatically if not.
>
> What do you think?
yeah this sounds good. While I thought about parsing the headers
initially but then the server headers can easily be changed, so I
wasn't sure about this approach earlier. Combing this with the user
specified server configuration value seems like the best solution.
Do find the patch attached. I am using st->server_type variable which
will be set to APACHE or LIGHTTPD based on the following logic:
- If the user has specified Server element in the conf file and it is
"apache" or "lighttpd", then set st->server_type variable
appropriately, otherwise ignore the Server value
- Parse the headers (only if the Server element is NULL or invalid) to
determine the type and set the st->server_type variable accordingly
- if st->server_type is not set as yet, then default it to apache
Regards
Amit
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Add _XOPEN_SOURCE=600 to all .c files with standards compliance defines.
This should hopefully give us strerror_r and strdup and similar neat
functions.
This should hopefully give us strerror_r and strdup and similar neat
functions.
Merge branch 'ff/auth'
collectd.conf(5): Add some information about the AuthFile format.
network plugin: Defines for non-gcrypt-code.
collectd.conf(5): Document the new authentication stuff.
network plugin: Some fixed to get encryption up and running again.
Wow, that was easy!
Wow, that was easy!
Merge branch 'master' into ff/auth
Conflicts:
src/network.c
Conflicts:
src/network.c
network plugin: Move towards a user/password based solution.
src/utils_fbhash.c: Implementation of a file-backed hash.
This is going to be used for password files on the server.
This is going to be used for password files on the server.
php-collection: add basic support for meta-selections
Add support for new meta selections allowing addition of graphs
with wildcard behavior.
This adds support for @all selection which matches any values
for the given identifier part.
In addition those types for which meta graphs exist now also list the
individual type instances in addition to the meta graph key for separate
graphing.
In order to support such new groups the lookup code has been refactored
to use a single scanning function which recursively traveses the
collectd RRD output directory for hosts, plugins, types and passing the
discovered data to callback functions for use. The callbacks returns
true to indicate traversal should continue on to next depth level and
false to tell it to continue with next element.
e.g. true on a host means it should look for plugins for given host,
false to continue with next host.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Add support for new meta selections allowing addition of graphs
with wildcard behavior.
This adds support for @all selection which matches any values
for the given identifier part.
In addition those types for which meta graphs exist now also list the
individual type instances in addition to the meta graph key for separate
graphing.
In order to support such new groups the lookup code has been refactored
to use a single scanning function which recursively traveses the
collectd RRD output directory for hosts, plugins, types and passing the
discovered data to callback functions for use. The callbacks returns
true to indicate traversal should continue on to next depth level and
false to tell it to continue with next element.
e.g. true on a host means it should look for plugins for given host,
false to continue with next host.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
php-collection: graph definition improvements for bind plugin
Add new dns_qtype_cached type for metagraph and switch memory metagraph
to line-based for bind plugin as the values from bind plugin are not
cumulative.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Add new dns_qtype_cached type for metagraph and switch memory metagraph
to line-based for bind plugin as the values from bind plugin are not
cumulative.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>