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.
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
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.
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
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.
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
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.
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
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! :-)
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
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! :-)
Best regards,
Max
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'ff/modbus'
README: Add information about the modbus plugin.
Merge branch 'schmurfy/re_invert'
collectd.conf(5): Document the new "Invert" option …
… of the Regex match.
… of the Regex match.
Regex match: Whitespace fixes.
now using cf_util_get_boolean
postgresql plugin: Relicensed to (2-clause) BSD license.
All (most?) of PostgreSQL is licensed under a BSD license …
Florian, the only other copyright holder, agreed with this.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
All (most?) of PostgreSQL is licensed under a BSD license …
Florian, the only other copyright holder, agreed with this.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
target_scale: Fixed a `break strict-aliasing rules' compiler warning.
… identified by GCC 4.4.3 using -O3.
… identified by GCC 4.4.3 using -O3.
configure: In the summary, say which plugins have been disabled by the user.
postgresql plugin: Let the read callback fail if all queries failed.
csv plugin: Use the value list's interval when outputting to STDOUT.
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.
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.
utils_db_query: Introduced the query & result preparation areas.
These objects are used to store the temporary data needed during execution of
a query, which was previously stored in the query object itself. This allows
the query object to be used read-only, making it possible to use it from
multiple threads in parallel.
The dbi, oracle and postgresql plugins have been updated to use that
(mandatory) new feature.
These objects are used to store the temporary data needed during execution of
a query, which was previously stored in the query object itself. This allows
the query object to be used read-only, making it possible to use it from
multiple threads in parallel.
The dbi, oracle and postgresql plugins have been updated to use that
(mandatory) new feature.
added an "Invert" option for regex
modbus plugin: Downgrade to use the libmodbus 1.2.5 API.
The API of the library changes every other month, so be conservative and
use the "stable" version, released in May 2008, and hope *that* API is
somewhat stable.
The API of the library changes every other month, so be conservative and
use the "stable" version, released in May 2008, and hope *that* API is
somewhat stable.
postgresql plugin: Don't abort read(), if a query's version doesn't match.
There is no reason to skip unrelated queries because of that.
There is no reason to skip unrelated queries because of that.
postgresql plugin: Use the "right" `interval' when passing a param to a query.
… i.e., use the database specific interval, if configured.
… i.e., use the database specific interval, if configured.
postgresql plugin: Added the ``Interval'' config option.
This option may be used to specify the read interval with which to query a
database.
This option may be used to specify the read interval with which to query a
database.
postgresql plugin: Use the "complex read" mechanism.
This way, multiple databases are queried in parallel (depending on the number
of read threads).
This way, multiple databases are queried in parallel (depending on the number
of read threads).
postgresql plugin: Connect to the database in the read function.
… rather than the init function. This way, we don't need access to some global
list of databases in the init function and it's done in preparation to using
the "complex read" system.
… rather than the init function. This way, we don't need access to some global
list of databases in the init function and it's done in preparation to using
the "complex read" system.
plugin: Introduced a concept of ``read groups''.
Using a new parameter added to plugin_register_complex_read(), it's now
possible to specify a group name for the registered callback. This name may
later be used to unregister *all* callbacks belonging to that group using the
newly added function plugin_unregister_read_group().
This might come in handy for plugins that register multiple read callbacks but
do not want to keep track of all of them in order to be able to unregister
them.
Using a new parameter added to plugin_register_complex_read(), it's now
possible to specify a group name for the registered callback. This name may
later be used to unregister *all* callbacks belonging to that group using the
newly added function plugin_unregister_read_group().
This might come in handy for plugins that register multiple read callbacks but
do not want to keep track of all of them in order to be able to unregister
them.
utils_llist: Added `llist_search_custom()'.
This function may be used for lookups using a custom compare function, i.e.
lookups that are not necessarily based on the name of the registered list
entry but some information specific to the used data-type.
This function may be used for lookups using a custom compare function, i.e.
lookups that are not necessarily based on the name of the registered list
entry but some information specific to the used data-type.
src/utils_format_json.c: Use a format string to add strings to the buffer.
While I hope that DS names can be trusted, I'm feeling more comfortable this
way nonetheless.
While I hope that DS names can be trusted, I'm feeling more comfortable this
way nonetheless.
utils_format_json: include ds names and types in json output.
Make it easier for external systems (i.e. those without visibility into
types.db) to interpret collectd json data.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Make it easier for external systems (i.e. those without visibility into
types.db) to interpret collectd json data.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
src/utils_format_json.c: Convert all data source types to rates except GAUGE.
This is basically the same fix as previously done for the write_http plugin.
This is basically the same fix as previously done for the write_http plugin.
write_http: make StoreRates work for JSON format, too.
StoreRates for write_http was inconsistent in that it only functioned
for WH_FORMAT_COMMAND. Extend StoreRates so that it works when using
WH_FORMAT_JSON, too.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
StoreRates for write_http was inconsistent in that it only functioned
for WH_FORMAT_COMMAND. Extend StoreRates so that it works when using
WH_FORMAT_JSON, too.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
write_http plugin: Fix the store rates option.
Convert all data source types to rates except GAUGE. Also, fixes some
indentation.
Convert all data source types to rates except GAUGE. Also, fixes some
indentation.
memcachec plugin: Add the "ExcludeRegex" config option.
curl plugin: Add the "ExcludeRegex" config option.
Introduces ExcludeRegexp to the tail plugin
Hi Florian
Florian Forster wrote:
> On Fri, Mar 19, 2010 at 06:13:14PM +0100, Peter Warasin wrote:
>> I'm searching for something like "ExcludeRegExp".
>
> no, something like that doesn't exist yet. I like the idea though, so
> I've added it to the [[Roadmap]] wiki page.
Attached is a patch which implements this.
The patch is against 4.9.1
Please tell me if you want me to rebase it to current svn
kind regards,
peter
--
:: e n d i a n
:: open source - open minds
:: peter warasin
:: http://www.endian.com :: peter@endian.com
Adds ExcludeRegex to the tail-match plugin
With this keyword it is possible to exclude a line from a match.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Hi Florian
Florian Forster wrote:
> On Fri, Mar 19, 2010 at 06:13:14PM +0100, Peter Warasin wrote:
>> I'm searching for something like "ExcludeRegExp".
>
> no, something like that doesn't exist yet. I like the idea though, so
> I've added it to the [[Roadmap]] wiki page.
Attached is a patch which implements this.
The patch is against 4.9.1
Please tell me if you want me to rebase it to current svn
kind regards,
peter
--
:: e n d i a n
:: open source - open minds
:: peter warasin
:: http://www.endian.com :: peter@endian.com
Adds ExcludeRegex to the tail-match plugin
With this keyword it is possible to exclude a line from a match.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
modbus plugin: Set the interval when dispatching values.
collectd.conf(5): Improve the synopsis for the "modbus" plugin.
collectd.conf(5): Add documentation for the "modbus" plugin.
modbus plugin: Add some folding markers.
modbus plugin: Implement dispatching of values.
Merge branch 'master' into ff/modbus
Merge branch 'fs/openvpn'
Conflicts:
src/collectd.conf.pod
src/openvpn.c
Conflicts:
src/collectd.conf.pod
src/openvpn.c
Merge branch 'collectd-4.9'
openvpn plugin: Fix a copy'n'paste error in the "new naming schema".
collectd.conf(5): Document the "ImprovedNamingSchema" option of the OpenVPN plugin.
collectd.conf(5): Document the "Collect{IndividualUsers,UserCount}" options of the OpenVPN plugin.
openvpn plugin: Rename the "OnlyAggregateUsers" option to "CollectIndividualUsers".
The semantic is inverted: When true (default) statistics for individual
users will be collected.
The "AggregateUsers" is now named "CollectUserCount" and a new name for
"Compression", "CollectCompression", has been added. This makes the names
of the config options consistent with one another.
The module global configuration variables have been changed to _Bool
while I was at it.
The semantic is inverted: When true (default) statistics for individual
users will be collected.
The "AggregateUsers" is now named "CollectUserCount" and a new name for
"Compression", "CollectCompression", has been added. This makes the names
of the config options consistent with one another.
The module global configuration variables have been changed to _Bool
while I was at it.
openvpn plugin: Added copyright notice for Fabian Schuh.
src/openvpn.c: Re-indent the entire file.
Bugfix that made collectd inflooping if no openvpn connection
Name changes - removed transfer statistics (doesn't make sense here)
Added Users Counter
fixed typo
Bugfix with multiple files
[openvpn] new feature 'SumOverAllUsers'
netapp plugin: Fix a syntax error in an error message.
Thanks to facade from IRC for the hint.
Thanks to facade from IRC for the hint.
modbus plugin: Actually get into a working state.
Build system: Add the "modbus" plugin.
configure.in: Add checks for libmodbus.
Merge branch 'master' into ff/modbus
Merge branch 'cstenac'
Merge branch 'collectd-4.9'
Merge branch 'collectd-4.8' into collectd-4.9
Conflicts:
src/exec.c
Conflicts:
src/exec.c
Exec plugin: Update copyright header.
processes plugin: Fix a couple of hard-coded array sizes.
Since I was picky when accepting Clément's patch, I felt like I owed it
to clean up the entire file ;)
Since I was picky when accepting Clément's patch, I felt like I owed it
to clean up the entire file ;)
processes plugin: Update copyright and author information.
collectd.conf(5): Document the new "PrintSeverity" option.
logfile plugin: Rename the "PrintLevel" option to "PrintSeverity".
Impove level print
Misc fixes, thanks to octo for pointing them out
Add missing declarations for anonymous and code
configfile: cf_read_dir: Don't abort reading a directory when reading one file fails.
Modbus plugin: Started working on a "Modbus-TCP" plugin for collectd.
src/configfile.c: Fix a minor typo.
src/configfile.[ch]: Add "cf_util_get_int".
Helper function to parse an "int".
Helper function to parse an "int".
src/configfile.[ch]: Implement "cf_util_get_string_buffer".
A function to parse a config node into a char buffer of limited size.
A function to parse a config node into a char buffer of limited size.
Processes plugin: Fix a minor typo.
Exec plugin: Add a missing folding marker.
Exec plugin: Set the "noreturn" attribute on the "exec_child" function.
Exec plugin: Reset the "PL_RUNNING" if "fork_child()" fails.
libiptc: avoid strict-aliasing warnings
libiptc: avoid strict-aliasing warnings
In file included from libiptc/libip4tc.c:117:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘iptc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip4tc.c: In function ‘dump_entry’:
libiptc/libip4tc.c:157:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules
CC libiptc/libip6tc.lo
In file included from libiptc/libip6tc.c:112:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘ip6tc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip6tc.c: In function ‘dump_entry’:
libiptc/libip6tc.c:188:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Rebased for collectd/src/owniptc: Alan Pevec <apevec@gmail.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
libiptc: avoid strict-aliasing warnings
In file included from libiptc/libip4tc.c:117:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘iptc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip4tc.c: In function ‘dump_entry’:
libiptc/libip4tc.c:157:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules
CC libiptc/libip6tc.lo
In file included from libiptc/libip6tc.c:112:0:
libiptc/libiptc.c: In function ‘__iptcc_p_del_policy’:
libiptc/libiptc.c:826:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libiptc.c: In function ‘ip6tc_get_target’:
libiptc/libiptc.c:1650:4: warning: dereferencing type-punned pointer will break
strict-aliasing rules
libiptc/libip6tc.c: In function ‘dump_entry’:
libiptc/libip6tc.c:188:3: warning: dereferencing type-punned pointer will break
strict-aliasing rules
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Rebased for collectd/src/owniptc: Alan Pevec <apevec@gmail.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge remote branch 'origin/collectd-4.8' into collectd-4.8
configure.in: Check for "htonll".
The first patch adds support to check if the htonl and htonll functions
(which are used in AIX port) are available in configure. Until now the
AIX port used these functions without perform any existence test.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
The first patch adds support to check if the htonl and htonll functions
(which are used in AIX port) are available in configure. Until now the
AIX port used these functions without perform any existence test.
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
memcached plugin: Add hack for AIX compatibility.
The second one port memcached plugin to AIX. Since AIX don't have
MSG_DONTWAIT flag support, we use MSG_NONBLOCK... and we hope to work
fine ever :)
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
The second one port memcached plugin to AIX. Since AIX don't have
MSG_DONTWAIT flag support, we use MSG_NONBLOCK... and we hope to work
fine ever :)
Signed-off-by: Florian Forster <octo@leeloo.lan.home.verplant.org>
oracle plugin: Fix semantics of OCIAttrGet.
Apparently it returns success if it could fetch the parameter value and
doesn't interpret the value itself. So returning NULL when querying for
OCI_ATTR_SERVER_STATUS does not result in an error. Handle this as a
lost connection.
Thanks to Sven for pointing this out :)
Apparently it returns success if it could fetch the parameter value and
doesn't interpret the value itself. So returning NULL when querying for
OCI_ATTR_SERVER_STATUS does not result in an error. Handle this as a
lost connection.
Thanks to Sven for pointing this out :)
Add missing fetch of virtual size for Mach
Add support for fetching data (aka anonymous) and code virtual memory size
Minor typo
Add an option to add the severity of the message in the logfile plugin
write_http plugin: Replace tabs with spaces.
So the entire file is indented the same way.
So the entire file is indented the same way.
.mailmap: Added Rodolphe Quiedeville <rquiedeville@bearstech.com>.
His name was mis-spelled in one commit as Rodolphe Quiedeville*l*.
His name was mis-spelled in one commit as Rodolphe Quiedeville*l*.
write_http plugin: Fixed a memory leak in the "StoreRates" code.
write_http plugin: Add a StoreRates option.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Merge branch 'collectd-4.9'
Merge branch 'collectd-4.8' into collectd-4.9
Conflicts:
src/ping.c
Conflicts:
src/ping.c
contrib/redhat/collectd.spec: Updated for version 4.9.
I've attached a patch for the RPM specfile to allow it to build collectd 4.9.0,
including Java support.
I've attached a patch for the RPM specfile to allow it to build collectd 4.9.0,
including Java support.
debian/: Removed ancient Debian package files.
You might want to look at git://git.tokkee.org/pkg-collectd.git instead.
You might want to look at git://git.tokkee.org/pkg-collectd.git instead.
configure.in: Fix three small typos.
Build system: Put Java class files into a .jar file.
Hi,
I was wondering why the java plugin api class files are published under
share/collectd/java. Ideally, a java-plugin.jar file containing all the class
files should get published rather than the individual class files.
Additionally, the jar files IMO should get published to the lib directory where
the so files are sitting rather than the share directory.
Same holds true for jmx class files as well (probably jmx.jar?).
I could work on this if everyone is okay with it.
Regards
Amit
Hi,
I was wondering why the java plugin api class files are published under
share/collectd/java. Ideally, a java-plugin.jar file containing all the class
files should get published rather than the individual class files.
Additionally, the jar files IMO should get published to the lib directory where
the so files are sitting rather than the share directory.
Same holds true for jmx class files as well (probably jmx.jar?).
I could work on this if everyone is okay with it.
Regards
Amit
src/utils_cmd_listval.c: Fix a memory leak.
Thanks to Peter Warasin for figuring this out. His "garbage collector" patch
may replace this solution in future versions of collectd.
Thanks to Peter Warasin for figuring this out. His "garbage collector" patch
may replace this solution in future versions of collectd.
Bugfix: correctly handle spurious wakeups in pthread_cond_timedwait
This fixes problems storing data in rrd files on NetBSD 5.0 with more
than one CPU.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
This fixes problems storing data in rrd files on NetBSD 5.0 with more
than one CPU.
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
src/utils_format_json.c: Use "isfinite" rather than "isinf".
Makes it a bit easier to read.
Makes it a bit easier to read.