Bruno Prémont [Sun, 5 Oct 2008 12:09:08 +0000 (14:09 +0200)]
configure.in: Let configure bail out on missing dependencies
The patch below adds check in AC_PLUGIN() that verifies if the
dependencies are met for any enabled plugin.
In case some dependency is missing (default is disabled and enabled
is selected) configure will fail after dumping summary so all
dependency issues are visible in a single configure pass.
A later addition would be to list requirements (dependencies, OS/Kernel
restrictions) for all plugins in an easily accessible location (e.g.
INSTALL file)
Florian Forster [Mon, 6 Oct 2008 09:46:59 +0000 (11:46 +0200)]
src/collectd-nagios.c: Improve handling of lines returned from `GETVAL'.
Then selecting only certain data sources with the `-d' option, the program
would try to read more lines from the server than the server reports, resulting
in the communication never finishing.
This patch resolves that problem and introduces a couple other error handling
blocks.
Thanks to Fabian Linzberger for pointing this out.
Sebastian Harl [Thu, 2 Oct 2008 13:25:10 +0000 (15:25 +0200)]
collectdmon: Do not block SIGCHLD.
There is no reason to do so as we do not need to synchronize any waitpid()
calls. In fact, doing so was wrong because waitpid() should then return with
an error according to POSIX. This was still working so far since waitpid()
would not return until all children terminated and this is all we really care
about.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Sebastian Harl [Thu, 2 Oct 2008 12:53:06 +0000 (14:53 +0200)]
iptables plugin, utils_ignorelist: Fixed an off-by-one error each.
Those were introduced when unifying the string handling in commit 5f9ec13b in
cases where the exact length of the string to be copied is passed to sstrncpy
instead of the size of the destination buffer.
In case of the iptables plugin this prevented the table or chain name to match
correctly as the user configuration was truncated. In case of the ignorelist a
given regex was truncated.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Sebastian Harl [Tue, 16 Sep 2008 13:40:14 +0000 (15:40 +0200)]
perl plugin: Disable plugin after fatal configuration errors.
Currently, the only such case is the failure to bootstrap the Perl interpreter
and Collectd module. This fixes a segfault that happened when trying to
configure Perl plugins in that case.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
snmp plugin: Improve parsing of strings to values.
The ``strings'' returned by the Net-SNMP library may not be null
terminated. What the fuck were those guys thinking? At least there's a
`val_len' member in `struct variable_list' we can use to determine the
amount of bytes we need to copy.
powerdns plugin: Use `LOCALSTATEDIR' instead of "/var".
I was working on updating Gentoo's ebuild and I noticed that localstatedir was
not used in certain places. Please review these patches and consider them.
Boian Berberov
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Florian Forster [Wed, 27 Aug 2008 15:46:05 +0000 (17:46 +0200)]
Collectd::Unixsock: Update `putnotif', fix a bug in `getval', better debug output.
The `putnotif' method now handles identifiers and options with spaces
correctly. The `getval' plugin now reads the returned data line wise,
which is the right thing to do anyway. The new `_debug' function prints
debugging output if the (module)global $Debug variable is set.
Sebastian Harl [Tue, 26 Aug 2008 14:11:26 +0000 (16:11 +0200)]
postgresql_default.conf: Split "queries" query into two versions.
The "n_tup_hot_upd" column has been added in 8.3. The two versions of the
"queries" query now take that into account by defining different SQL queries
for versions up to 8.2.99 and versions starting with 8.3.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Those options may be used to specify the minimum and maximum version of
PostgreSQL which is required for some query. This may be used to automatically
configure the plugin for a heterogeneous environment while using the same
configuration file on all hosts.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Similar to the global "<Plugin>" blocks this may be used to configure Perl
plugins. The oconfig_item_t object is converted to a Perl hash which will be
passed on to the registered configuration callback. A configuration
callback is registered using the TYPE_CONFIG identifier.
The Perl representation of the oconfig_item_t object looks like this:
Sebastian Harl [Tue, 26 Aug 2008 09:52:53 +0000 (11:52 +0200)]
perl plugin: Re-get the perl interpreter after parsing each configuration option.
The current perl interpreter might change while parsing the configuration
(e.g. the first interpreter is created by the "LoadPlugin" option), so this is
to make sure that we're using the right interpreter at all times.
Signed-off-by: Sebastian Harl <sh@tokkee.org> Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Florian Forster [Fri, 22 Aug 2008 14:12:41 +0000 (16:12 +0200)]
rrdtool plugin: Implemented the `WritesPerSecond' option.
This option lets you slow down the `queue thread' within the rrdtool
plugin, so that the system stays responsive while writing all values
to disk. When FLUSH'ing values and during shutdown this limit is not
in effect.