Florian Forster [Mon, 3 May 2010 07:22:39 +0000 (09:22 +0200)]
python plugin: Disable strict aliasing.
"Py_True" and "Py_False" have some weird implementation that GCC can't cope
with. Disable strict aliasing (and warnings relating to it) in order to avoid
those problems at the cost of optimization.
Florian Forster [Sat, 1 May 2010 07:53:12 +0000 (09:53 +0200)]
Build system: Check for "strtok_r" availability with "-Wall -Werror" when using GCC.
Previously, the check was done without "-Werror" which resulted in a
warning and success. When the daemon was later built with "-Werror" set,
that warning would result in an error and abort the build.
Thanks to Aurélien Reynaud for reporting the problem.
collectd-nagios.c: Output performance data with the "%f" format string.
Apparently the parser used by nagios is dumb as bread. Thanks to Lao Wai
for pointing this out. For more information, see:
<http://nagiosplug.sourceforge.net/developer-guidelines.html#AEN201>
Andrés J. Díaz [Thu, 17 Dec 2009 22:21:14 +0000 (23:21 +0100)]
Timeout for missing values
Hi!
I attach here a patch which adds Timeout option in configuration file.
This option is global (i.e. at the same level as Interval) and it's
the max number of intervals that a package can be missed before a
missing notification would be raised. By dafault collectd wait 2
intervals and it's a hardcoded value AFAIK, if plugin cannot get data
for more than 2 intervals, then (if it's an interesting value),
collectd send a missing notification. Setting Timeout to an high value
you can be more tolerant with that missing.
It's usefull on large networks. In my case, the company LAN is
distributed on distant locations and sometimes (due to network issues)
UDP packages are lost, I use the Timeout to be more tolerant to this
networks fails. For example setting Internval to 10 and Timeout to 6,
a missing notification will be raised only if none data was reported
in last 60s.
I hope that things explained well enough, and (who knows!) maybe this
could be usefull to anybody ;)
Removed includes already included via "collectd.h", moved variable
declarations before function declarations, fixed missing return
statements, and removed void statements.
Max Henkel [Fri, 2 Apr 2010 10:41:11 +0000 (12:41 +0200)]
network plugin: Interface option moved to Server/Listen block
Hello list!
On Tue, Mar 09, 2010 at 06:17:35PM +0100, Florian Forster wrote:
[...]
> On Fri, Feb 26, 2010 at 12:49:02PM +0100, Max Henkel wrote:
[...]
> > @@ -2842,6 +2929,8 @@ static int network_config (oconfig_item_t *ci) /* {{{ */
> > network_config_add_server (child);
> > else if (strcasecmp ("TimeToLive", child->key) == 0)
> > network_config_set_ttl (child);
> > + else if (strcasecmp ("Interface", child->key) == 0)
> > + network_config_set_interface (child);
> > else if (strcasecmp ("MaxPacketSize", child->key) == 0)
> > network_config_set_buffer_size (child);
> > else if (strcasecmp ("Forward", child->key) == 0)
>
> Starting with the signing and encryption option, we have <Server> and
> <Listen> blocks that take socket specific options. It'd be kind of
> inconsistent with the "TimeToLive" and other options, but maybe adding
> this to those blocks would be even better. It would enable to forward
> data from one multicast group on interface-0 to the *same* multicast
> group on interface-1, which I guess could be useful. But maybe it's an
> academic case, I dunno.. Thoughts, anyone?
[...]
This patch provides the configuration possibility inside the
Server/Listen-block, but I'm unsure if the "int interface" is
located properly inside the sockent_t.
Max Henkel [Fri, 2 Apr 2010 10:40:01 +0000 (12:40 +0200)]
network plugin: Bind to device for unicast
Hello list!
On Tue, Mar 09, 2010 at 06:17:35PM +0100, Florian Forster wrote:
[...]
> On Fri, Feb 26, 2010 at 12:49:02PM +0100, Max Henkel wrote:
[...]
> > + if (! IN_MULTICAST (ntohl (addr->sin_addr.s_addr)))
> > + return (0);
>
> Doesn't it make sense to be able to set the interface in unicast mode,
> too? For example if the host has multiple default gateways. The
> socket(7) option "SO_BINDTODEVICE" could be used for this I guess.
[...]
Thus this patch binds the socket to a specific interface for unicast
traffic, too. But, as Sebastian already mentioned, the behaviour is
Linux specific.
Max Henkel [Fri, 2 Apr 2010 10:39:19 +0000 (12:39 +0200)]
network plugin: Added Interface option
Hello list!
Again I'm providing an interface option for the network plugin for
the manual selection of an incoming or outgoing interface,
incorporating the changes proposed by Florian and Sebastian.
Please look through it and feedback or suggest new changes! :-)
Florian Forster [Wed, 31 Mar 2010 07:01:05 +0000 (09:01 +0200)]
collectd-perl(5): Fix the synopsis.
I think this is a left-over from a switch from "Collectd::Plugin" to
"Collectd::Plugins". Thanks to Denis Yagofarov for reporting the bug and
Michael Shigorin for relaying it to me.
Sebastian Harl [Tue, 30 Mar 2010 19:55:13 +0000 (21:55 +0200)]
utils_db_query: Added support for custom plugin intervals.
The interval is specified when calling udb_query_prepare_result(). A value
less than or equal to zero may be used to let udb use the default
(interval_g).
The dbi, oracle, and postgresql plugins have been updated accordingly.