Merge branch 'ff/tail'
src/types_list.c: Removed annoying debug messages.
src/utils_match.c: Added a debug message to print the received regex.
Escapes in the configfile made it interesting what string actually arrives at
the plugin.
Escapes in the configfile made it interesting what string actually arrives at
the plugin.
src/utils_tail_match.c: Submit NAN if type if gauge and no values were matched.
tail plugin: Fix a typo in the name of the config keys.
tail plugin: Add a plugin to tail and parse logfiles.
Renamed: src/utils_logtail.[ch] -> src/utils_tail_match.[ch]
src/utils_match.[ch]: Improved the handling of gauge values.
They can not use the consolidation functions `AVERAGE', `MIN', `MAX' and `LAST'
just as you know them from RRDTool.
They can not use the consolidation functions `AVERAGE', `MIN', `MAX' and `LAST'
just as you know them from RRDTool.
Merge branch 'ff/tail'
src/utils_match.c: Actually set `ds_type' in the object.
Also use the sub-match, not the overall match.
Also use the sub-match, not the overall match.
src/utils_logtail.c: Added another error message.
src/utils_tail.c: Added more error messages.
src/utils_logtail.h: Completed the documentation.
16 years agosrc/utils_logtail.[ch]: Implement a module that parses logfiles using the `utils_tail...
src/utils_logtail.[ch]: Implement a module that parses logfiles using the `utils_tail' and `utils_match' modules.
src/utils_match.[ch]: Add a module to automate regular expression matching on a string.
src/utils_logtail.c: Code cleanups.
Replaced the `DESTROY_INSTANCE' macro with the `destroy_instance' function.
Made the `logtail_read' easier to read.
Replaced the `DESTROY_INSTANCE' macro with the `destroy_instance' function.
Made the `logtail_read' easier to read.
src/utils_logtail.[ch]: Add a module to provide facilities for logfile tailing.
Merge branch 'lh/tail'
src/utils_tail.[ch]: Streamlined error handling.
Also the coding style has been adapted to match the one of the rest of the
daemon better.
Also the coding style has been adapted to match the one of the rest of the
daemon better.
Merge branch 'collectd-4.2' into collectd-4.3
Merge branch 'collectd-4.1' into collectd-4.2
ping plugin: Deactivate the plugin if (pingobj == NULL).
If (pingobj == NULL), then the init-function will return (-1) so that the
plugin is deactivated.
If (pingobj == NULL), then the init-function will return (-1) so that the
plugin is deactivated.
src/collectd.c: Fix the arguments passed to an error message.
Unfortunately the compiler doesn't check va-args, so this was unnoticed :/
Unfortunately the compiler doesn't check va-args, so this was unnoticed :/
16 years agoMerge branch 'collectd-4.2' of octo@verplant.org:/var/lib/git/collectd into collectd-4.2
Merge branch 'collectd-4.2' of octo@verplant.org:/var/lib/git/collectd into collectd-4.2
swap plugin: Reapply a patch for Solaris.
This is a previously applied change that somehow got lost.
See http://git.verplant.org/?p=collectd.git;a=commitdiff;h=ee1113650b0b565776fc3d62162d84741e234f05
and http://git.verplant.org/?p=collectd.git;a=commitdiff;h=f68b68c5825efbd23c51531ff4e43c78a3bb2b3b
This is a previously applied change that somehow got lost.
See http://git.verplant.org/?p=collectd.git;a=commitdiff;h=ee1113650b0b565776fc3d62162d84741e234f05
and http://git.verplant.org/?p=collectd.git;a=commitdiff;h=f68b68c5825efbd23c51531ff4e43c78a3bb2b3b
contrib/extractDS.px: Enhanced the script to modify RRD files a bit.
It can now also change the stepsize and add an RRA.
It can now also change the stepsize and add an RRA.
src/utils_tail.[ch]: Added a generic interface for `tail'ing files.
This will be used to parse logfiles in the near future.
This will be used to parse logfiles in the near future.
ChangeLog: Removed the legacy message about Nagios integration in the exec plugin.
README: Moved "libxml2" from the "Features" section to "Prerequisites".
D'oh!
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
D'oh!
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'pull/collectd-4.1' into collectd-4.1
src/collectd.c: Write a more informative error message if looking up the FQDN fails.
As requested by Micha Krause.
As requested by Micha Krause.
exec plugin: Use `setgroups' to set the list of supplementary group IDs.
Thanks to Peter Holik for suggesting this.
Thanks to Peter Holik for suggesting this.
src/configfile.c: Fix another access of free'd memory.
This led to a crash with the default config of the Debian package.
This led to a crash with the default config of the Debian package.
liboconfig: Make sure that option-strings can always be freed.
This resolved a nasty crash when including files.
This resolved a nasty crash when including files.
Bumped version to 4.3.0; Updated ChangeLog.
exec plugin: Removed the Nagios logic from the plugin.
Instead point users to the `exec-nagios.px' script in collectd-exec(5).
Instead point users to the `exec-nagios.px' script in collectd-exec(5).
migrate-3-4.px: Do not translate the disk names used by hddtemp.
In version 4, hddtemp still uses major/minor device numbers to identify disks.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
In version 4, hddtemp still uses major/minor device numbers to identify disks.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
migrate-3-4.px: Do not translate the disk names used by hddtemp.
In version 4, hddtemp still uses major/minor device numbers to identify disks.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
In version 4, hddtemp still uses major/minor device numbers to identify disks.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'collectd-4.2'
Merge branch 'collectd-4.1' into collectd-4.2
Merge branch 'sh/hddtemp'
hddtemp plugin, collectd.conf(5): Added "TranslateDevicename" config option.
If enabled, translate the disk names to major/minor device numbers. For
backwards compatibility this defaults to true but it it recommended to disable
it as it will probably be removed in the next major version. Any other parts
of collectd have changed in a similar way with version 4.0, so hddtemp should
do so as well.
This option is disabled in new versions of the config file.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
If enabled, translate the disk names to major/minor device numbers. For
backwards compatibility this defaults to true but it it recommended to disable
it as it will probably be removed in the next major version. Any other parts
of collectd have changed in a similar way with version 4.0, so hddtemp should
do so as well.
This option is disabled in new versions of the config file.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
rrdtool plugin: Sort the list of user defined `RRATimespan's.
This is required by the logic calculating the RRA sized.
This is required by the logic calculating the RRA sized.
Merge branch 'master' of octo@verplant.org:/var/lib/git/collectd
perl plugin: Do not abort while preparing the stack for a subroutine call.
Else the stack would probably be left in an inconsistent case and might even
leak memory.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Else the stack would probably be left in an inconsistent case and might even
leak memory.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
collectd.conf(5): Added a note that libvirt's RefreshInterval may be disabled.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
README: Added libxml2 to the list of prerequisites.
The libvirt plugin uses this library to parse data provided by libvirt.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
The libvirt plugin uses this library to parse data provided by libvirt.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
README: Fixed a typo.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Updated collectd.conf.in.
* Missing plugins and config options have been added.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
* Missing plugins and config options have been added.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
contrib/README: Removed the section about PerlLib/.
This subdirectory no longer exists - it has been moved to bindings/perl/.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
This subdirectory no longer exists - it has been moved to bindings/perl/.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Makefile.am: Create `$(localstatedir)/log' so the logfile plugin works out-of-the-box.
And don't search for `.svn' directories anymore - they're long gone.
And don't search for `.svn' directories anymore - they're long gone.
16 years agoexec plugin: Changed the format in which notifications are passed to the programs. collectd-4.3.0beta1
exec plugin: Changed the format in which notifications are passed to the programs.
Using a `Message:' header field restricts us to one-line messages, which is
probably not very farsighted.
Using a `Message:' header field restricts us to one-line messages, which is
probably not very farsighted.
exec plugin: Disabled the `NagiosExec' option.
All references to this option have been removed from the manpages, too.
All references to this option have been removed from the manpages, too.
collectd.conf(5), ChangeLog: Documented the new `Include' features.
src/configfile.c: Use wordexp(3) to expand shell wildcards if available.
contrib/migrate-3-4.px: Handle `hddtemp' graphs correctly.
contrib/exec-nagios.px: Added a Perl script which handles Nagios plugins.
It handles most of the Nagios plugin API, including multi-line output (a
Nagios 3 feature) and performance data. It's basic on purpose so that easy
stuff is possible but complex stuff is about as hard as rewriting the plugin ;)
It handles most of the Nagios plugin API, including multi-line output (a
Nagios 3 feature) and performance data. It's basic on purpose so that easy
stuff is possible but complex stuff is about as hard as rewriting the plugin ;)
contrib/exec-munin.px: Fix a typo in the config handling functions.
src/utils_ignorelist.c: Remove an annoying debug message.
configure: Fix a syntax error.
Merge branch 'master' of octo@verplant.org:/var/lib/git/collectd
configure: Correctly handle all cases when using AC_ARG_WITH().
In a lot of cases only "$withval" != "yes" and "no" had been handled when the
option had been given. Therefore, the option had been ignored if no argument
had been passed to the option, making --with-<option> and / or
--without-<option> a no-op. This patch fixes this issue.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
In a lot of cases only "$withval" != "yes" and "no" had been handled when the
option had been given. Therefore, the option had been ignored if no argument
had been passed to the option, making --with-<option> and / or
--without-<option> a no-op. This patch fixes this issue.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
contrib/examples/: Added an example for a notification callback.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
collectd(1), README: Document notifications and related plugins.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
collectdmon(1): Added a section about supported signals.
Documented the effects of the SIGINT, SIGTERM and SIGHUP signals.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Documented the effects of the SIGINT, SIGTERM and SIGHUP signals.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
README: Added "uuid" plugin to the list of available plugins.
* Added an optional dependency on libhal.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
* Added an optional dependency on libhal.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
README: Updated package description.
Added a note about the monitoring support (this has been copied from the
Debian package description).
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Added a note about the monitoring support (this has been copied from the
Debian package description).
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
src/configfile.c: Extend the `Include' statement to handle directories, too.
Directories are included recursively. Files and directories begnning with a dot
are ignored. Symlinks are followed. You can crash collectd by looping the
symlinks.
Directories are included recursively. Files and directories begnning with a dot
are ignored. Symlinks are followed. You can crash collectd by looping the
symlinks.
configure: Warn if librrd is not thread safe.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
plugin.c: Use an AVL tree to store the data sets.
The list of data sets is queried quite frequently but hardly ever modified.
Using an AVL tree instead of a linked list improves the search time from O(n)
to O(log n).
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
The list of data sets is queried quite frequently but hardly ever modified.
Using an AVL tree instead of a linked list improves the search time from O(n)
to O(log n).
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
exec plugin: Fixed a possible (though very improbable) memory leak.
In case of an error, the program_list_and_notification_t pointer has not been
freed before calling pthread_exit() from exec_notification_one().
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
In case of an error, the program_list_and_notification_t pointer has not been
freed before calling pthread_exit() from exec_notification_one().
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Collectd.pm: Use $interval_g instead of a hard-coded value.
The hard-coded value was still legacy code from the time before the global
variables have been exported to Perl.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
The hard-coded value was still legacy code from the time before the global
variables have been exported to Perl.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
perl.c: Unregister notifications in perl_shutdown().
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
perl plugin: Fixed a bug in Collectd::plugin_unregister_data_set().
The function tried to access a nonexistent second argument.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
The function tried to access a nonexistent second argument.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
collectd-perl(5): Added documentation for the notification support.
Some minor errors have been fixed as well and the ChangeLog has been updated.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Some minor errors have been fixed as well and the ChangeLog has been updated.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
perl plugin: Exported plugin_dispatch_notification() to Perl.
This adds the following function to collectd's Perl API:
Collectd::plugin_dispatch_notification:
submit a notification to collectd's notification mechanism
arguments:
notif - notification
A notification is a reference to a hash with the following members:
severity => $severity (default: NOTIF_FAILURE)
time => $time (default: time (NULL))
message => $msg
host => $host (default: hostname_g)
plugin => $plugin
type => $type
plugin_instance => $instance
type_instance => $type_instance
The severity should be any of the Collectd::NOTIF_* constants.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
This adds the following function to collectd's Perl API:
Collectd::plugin_dispatch_notification:
submit a notification to collectd's notification mechanism
arguments:
notif - notification
A notification is a reference to a hash with the following members:
severity => $severity (default: NOTIF_FAILURE)
time => $time (default: time (NULL))
message => $msg
host => $host (default: hostname_g)
plugin => $plugin
type => $type
plugin_instance => $instance
type_instance => $type_instance
The severity should be any of the Collectd::NOTIF_* constants.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
perl plugin: Added support to dispatch notifications to Perl plugins.
Perl plugin may now register a callback of type Collectd::TYPE_NOTIF which
accepts a single hash argument with the following members:
severity
time
message
host
plugin
plugin_instance
type
type_instance
Severity may be any of the following values (exported by the "notif" tag):
Collectd::NOTIF_FAILURE
Collectd::NOTIF_WARNING
Collectd::NOTIF_OKAY
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Perl plugin may now register a callback of type Collectd::TYPE_NOTIF which
accepts a single hash argument with the following members:
severity
time
message
host
plugin
plugin_instance
type
type_instance
Severity may be any of the following values (exported by the "notif" tag):
Collectd::NOTIF_FAILURE
Collectd::NOTIF_WARNING
Collectd::NOTIF_OKAY
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
ChangeLog: Describe changes to the perl plugin in more detail.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
configure.in: Fixed handling of the --with-perl-bindings option.
This option could not be disabled so far as this case has not been handled in
the configure script. This patch fixes this issue.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
This option could not be disabled so far as this case has not been handled in
the configure script. This patch fixes this issue.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
Merge branch 'collectd-4.2'
Merge branch 'collectd-4.1' into collectd-4.2
network plugin: Have two different threads for handling incoming packets.
One that only receives and enqueues packets and one which parses the packets
and dispatches them to the daemon. This should solve problems with (too) short
socket buffers and (very) heavy load.
One that only receives and enqueues packets and one which parses the packets
and dispatches them to the daemon. This should solve problems with (too) short
socket buffers and (very) heavy load.
Collectd::Unixsock: Added license information.
The copyright information in some changed files has been updated, too.
The copyright information in some changed files has been updated, too.
TODO: Removed the remark about the `libvirt' plugin.
Now it builds flawlessly. Apparently it was some leftover file in my build tree
that caused this weird problem.
Now it builds flawlessly. Apparently it was some leftover file in my build tree
that caused this weird problem.
TODO: Updated the todo file.
src/utils_threshold.c: Implemented `warning' and `failure' thresholds.
The options `Min' and `Max' have been renamed to `FailureMin', `FailureMax',
`WarningMin', and `WarningMax'.
The options `Min' and `Max' have been renamed to `FailureMin', `FailureMax',
`WarningMin', and `WarningMax'.
logfile plugin: Only print the host field (and other fields) of a notification if they hold any information.
exec plugin: Implemented the `PUTNOTIF' command for external applications, too.
Also changed the manpage so that lines without the `PUTVAL' are mentioned as
being deprecated.
Also changed the manpage so that lines without the `PUTVAL' are mentioned as
being deprecated.
Collectd::Unixsock: Added the `putnotif' method to dispatch notifications.
Merge branch 'collectd-4.2'
Merge branch 'collectd-4.1' into collectd-4.2
collectd-unixsock(5): Copied Sebastian's additions from collectd-exec(5).
collectd-unixsock(5): Documented the PUTNOTIF command.
16 years agoMerge branch 'collectd-4.1' of octo@verplant.org:/var/lib/git/collectd into collectd-4.1
Merge branch 'collectd-4.1' of octo@verplant.org:/var/lib/git/collectd into collectd-4.1
src/common.h: Fixed many typos in the header file.
unixsock plugin: Imported the new `putnotif' command from the appropriate module.
16 years agosrc/utils_cmd_putnotif.[ch]: Added a new module which handles parsing of notification...
src/utils_cmd_putnotif.[ch]: Added a new module which handles parsing of notifications from some command line or similar.
Of course, this is similar to the `utils_cmd_putval' module.
Of course, this is similar to the `utils_cmd_putval' module.
TODO: Updated the todo file.
Added the goal to remove the cache from the unixsock plugin.
Added the goal to remove the cache from the unixsock plugin.
src/liboconfig/parser.y: Updated copyright information.
src/{common,network}.[ch]: Updated copyright information.