Florian Forster [Wed, 18 Apr 2007 16:00:42 +0000 (18:00 +0200)]
Merge branch 'sh/perl' into collectd-4
Florian Forster [Wed, 18 Apr 2007 11:44:10 +0000 (13:44 +0200)]
configure.in: Print the Perl-version in the configure-summary.
Florian Forster [Tue, 17 Apr 2007 21:28:04 +0000 (23:28 +0200)]
collectd-nagios(1): Added manpage for the Nagios-glue.
Florian Forster [Tue, 17 Apr 2007 20:56:33 +0000 (22:56 +0200)]
ChangeLog: Added a note about the perl plugin.
Florian Forster [Tue, 17 Apr 2007 20:51:56 +0000 (22:51 +0200)]
perl plugin: Use the `BaseName' only if it is non-empty.
Florian Forster [Tue, 17 Apr 2007 19:58:12 +0000 (21:58 +0200)]
configure.in: Bumped version to 4.0.0-rc4
Florian Forster [Tue, 17 Apr 2007 19:56:43 +0000 (21:56 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Florian Forster [Mon, 16 Apr 2007 13:49:53 +0000 (15:49 +0200)]
ping plugin: Improved error and debug messages.
Florian Forster [Mon, 16 Apr 2007 13:30:08 +0000 (15:30 +0200)]
ping plugin: Fail if no hosts was pinged.
Florian Forster [Mon, 16 Apr 2007 12:53:12 +0000 (14:53 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Sebastian Harl [Tue, 10 Apr 2007 22:27:54 +0000 (00:27 +0200)]
perl plugin: Exported plugin_log() to Perl.
This adds the following function to collectd's Perl API:
Collectd::plugin_log:
pass a message to collectd's logging mechanism
arguments:
level - log level
message - log message
The log level should be any of the Collectd::LOG_* constants.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Tue, 10 Apr 2007 22:27:54 +0000 (00:27 +0200)]
perl plugin: Exported plugin_log() to Perl.
This adds the following function to collectd's Perl API:
Collectd::plugin_log:
pass a message to collectd's logging mechanism
arguments:
level - log level
message - log message
The log level should be any of the Collectd::LOG_* constants.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Tue, 10 Apr 2007 22:25:57 +0000 (00:25 +0200)]
perl plugin: Added "BaseName" config option.
This option sets the basename of a Perl plugin, i.e. the prefix to its name
when loading the module. It defaults to "Collectd::Plugin".
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Tue, 10 Apr 2007 15:23:13 +0000 (17:23 +0200)]
Merge branch 'master' into collectd-4
Conflicts:
configure.in
Florian Forster [Tue, 10 Apr 2007 15:21:49 +0000 (17:21 +0200)]
Merge branch 'collectd-3.11'
Conflicts:
ChangeLog
Florian Forster [Tue, 10 Apr 2007 15:19:09 +0000 (17:19 +0200)]
Bumped version to 3.11.4; Updated ChangeLog.
Florian Forster [Tue, 10 Apr 2007 15:09:09 +0000 (17:09 +0200)]
src/utils_dns.c: Include `sys/socket.h' before `net/if_arp.h'.
Florian Forster [Tue, 10 Apr 2007 15:08:09 +0000 (17:08 +0200)]
configure.in: Improved the checks for `net/if_arp.h' and `netinet/if_ether.h'.
Florian Forster [Tue, 10 Apr 2007 14:56:14 +0000 (16:56 +0200)]
configure.in: Added check for `libperl'.
Florian Forster [Tue, 10 Apr 2007 12:46:29 +0000 (14:46 +0200)]
collectd(1): Added documentation for the `perl' plugin.
Sebastian Harl [Mon, 9 Apr 2007 16:26:48 +0000 (18:26 +0200)]
perl plugin: Added a plugin to embed a Perl interpreter into collectd.
This is the long awaited plugin that makes it possible to write plugins in
plain Perl. This is my first glance at using Perl's C API, so I'm pretty sure
there are some things that could habe been done better. Much of the plugin
could have been written in Perl as well, but I decided not to do so mainly for
exercise reasons ;-)
This plugin still needs a lot of testing. Also comments on the API, code, etc.
are very welcome.
Basically, the plugin is just the glue that's required for Perl plugins to
access collectd's internals. The following API is currently available:
Collectd::plugin_register:
register working functions or data sets with collectd
arguments:
type - type of the registered data
name - name of the plugin
data - reference to the plugin's working subroutine or the data set
Collectd::plugin_unregister:
unregister working functions or data sets from collectd
arguments:
type - type of the data to be unregistered
name - name of the plugin
Collectd::plugin_dispatch_values:
dispatch the collected values to the write functions
arguments:
name - name of the plugin
values - list of values to submit
The plugin type may be any of the following:
Collectd::TYPE_INIT
Collectd::TYPE_READ
Collectd::TYPE_WRITE
Collectd::TYPE_LOG
Collectd::TYPE_SHUTDOWN
Collectd::TYPE_DATASET
A data set is represented as a reference to an array containing hashes with the
following elements:
name => $ds_name (required)
type => $ds_type (default: COUNTER)
min => $ds_min (default: NAN)
max => $ds_max (default: NAN)
A value list is represented as a reference to a hash with the following
elements:
values => [ @values ] (required)
time => $time (default: time(NULL))
host => $hostname (default: hostname_g)
plugin => $plugin (default: "")
plugin_instance => $plugin_instance (default: "")
type_instance => $type_instance (default: "")
The default value is used whenever the element is not defined.
Three arguments are passed to write functions: the plugin's type, the plugin's
data set and the value list.
Two arguments are passed to log functions: the log level and the log message.
In case a function returns false (as interpreted by Perl) the following actions
are taken depending on the function type:
read: the function will be disabled for an increasing amount of time
init: the plugin will be disabled completely
anything else: a warning is logged
In addition to the ones listed above the following constants are also exported:
Collectd::DS_TYPE_COUNTER
Collectd::DS_TYPE_GAUGE
Collectd::LOG_ERR
Collectd::LOG_WARNING
Collectd::LOG_NOTICE
Collectd::LOG_INFO
Collectd::LOG_DEBUG
There is no need to load any Collectd modules - everything is completely
integrated into collectd.
TODO:
add support for accessing the config file
write documentation
add checks for perl to configure
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Mon, 9 Apr 2007 22:15:21 +0000 (00:15 +0200)]
README: Updated list of plugins and requirements.
Florian Forster [Mon, 9 Apr 2007 16:07:38 +0000 (18:07 +0200)]
contrib/: Updated the `README' file.
Florian Forster [Mon, 9 Apr 2007 15:53:07 +0000 (17:53 +0200)]
contrib/: Moved the SLES 10.1 files into a seperate subdirectory.
Florian Forster [Mon, 9 Apr 2007 11:02:15 +0000 (13:02 +0200)]
contrib/: Added `init.d-sles10.1' and `spec.sles10.1'.
Florian Forster [Mon, 9 Apr 2007 10:59:14 +0000 (12:59 +0200)]
contrib/: Added `extractDS.px' and `migrate-3-4.px'
Florian Forster [Mon, 9 Apr 2007 10:57:05 +0000 (12:57 +0200)]
src/plugin.c: Ensure that `wait_time' is at least `interval_g'.
Florian Forster [Fri, 6 Apr 2007 11:33:32 +0000 (13:33 +0200)]
nut plugin: Reconnect to the server if the connection is lost.
Florian Forster [Fri, 6 Apr 2007 08:17:43 +0000 (10:17 +0200)]
configure.in: Bumped version to 4.0.0-rc3.
Florian Forster [Fri, 6 Apr 2007 08:08:45 +0000 (10:08 +0200)]
src/plugin.c: Fix compiler-warnings for the Sun CC.
Assigning a (void *) to a function-pointer issues a warning with the Sun CC.
Florian Forster [Fri, 6 Apr 2007 08:08:03 +0000 (10:08 +0200)]
disk, tape plugin: Handle different `kstat_io_t' correctly.
Florian Forster [Fri, 6 Apr 2007 08:07:18 +0000 (10:07 +0200)]
configure.in: Many fixes for Solaris. Especially check the `kstat_io_t'-type for it's members.
Also changed `src/Makefile.am' to link `collectd-nagios' with `libsocket' if needed.
Florian Forster [Thu, 5 Apr 2007 19:03:52 +0000 (21:03 +0200)]
disk plugin: The member-names of the `kstat_io_t'-struct were fixed.
Florian Forster [Thu, 5 Apr 2007 18:40:48 +0000 (20:40 +0200)]
cpu plugin: Don't use `COLLECT_STEP' anymore.
Florian Forster [Thu, 5 Apr 2007 18:40:21 +0000 (20:40 +0200)]
plugin.c: Take in account that `pthread_t' is a pointer under Darwin.
Florian Forster [Thu, 5 Apr 2007 17:56:42 +0000 (19:56 +0200)]
src/Makefile.am: Added `network.h' to the dependencies for the network plugin.
Florian Forster [Thu, 5 Apr 2007 13:23:11 +0000 (15:23 +0200)]
cpu plugin: Collectd CPU `steal time' as reported by new Linux kernels.
Florian Forster [Tue, 3 Apr 2007 07:05:39 +0000 (09:05 +0200)]
configure.in: Bumped version to 4.0.0-rc1.
Florian Forster [Tue, 3 Apr 2007 07:05:19 +0000 (09:05 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Florian Forster [Tue, 3 Apr 2007 07:04:17 +0000 (09:04 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Florian Forster [Tue, 3 Apr 2007 07:03:51 +0000 (09:03 +0200)]
configure/collectd.h: Undef unusable `NAN' from <math.h> before defining our own.
Florian Forster [Tue, 3 Apr 2007 07:02:56 +0000 (09:02 +0200)]
src/liboconfig/Makefile.am: Added `aux_types.h' to the list of dependencies.
Florian Forster [Mon, 2 Apr 2007 15:42:12 +0000 (17:42 +0200)]
Bumped version to 4.0.0-rc0; Updated ChangeLog.
Florian Forster [Mon, 2 Apr 2007 15:41:22 +0000 (17:41 +0200)]
Makefile.am: Removed `collectd.spec' from `EXTRA_DIST'.
Florian Forster [Mon, 2 Apr 2007 15:40:51 +0000 (17:40 +0200)]
AUTHORS: Added `Sjoerd van der Berg'.
Florian Forster [Sun, 1 Apr 2007 17:13:30 +0000 (19:13 +0200)]
plugin.c: Fix an endless loop.
Florian Forster [Sat, 31 Mar 2007 07:18:41 +0000 (09:18 +0200)]
configure: Added `libupsclient' to the library-overview.
Florian Forster [Sat, 31 Mar 2007 06:15:43 +0000 (08:15 +0200)]
nut plugin: Fix building without the `upsclient' library.
Florian Forster [Sat, 31 Mar 2007 06:12:22 +0000 (08:12 +0200)]
Merge branch 'master' into collectd-4
Conflicts:
src/iptables.c
Florian Forster [Sat, 31 Mar 2007 06:09:50 +0000 (08:09 +0200)]
Merge branch 'collectd-3.11'
Conflicts:
ChangeLog
Florian Forster [Fri, 30 Mar 2007 20:09:38 +0000 (22:09 +0200)]
Bumped version to 3.11.3; Updated ChangeLog.
Florian Forster [Fri, 30 Mar 2007 20:04:16 +0000 (22:04 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Florian Forster [Fri, 30 Mar 2007 20:03:52 +0000 (22:03 +0200)]
exec plugin: Updated the documentation and sample configfile.
Florian Forster [Fri, 30 Mar 2007 19:45:38 +0000 (21:45 +0200)]
exec plugin: Send SIGTERM to all running child-processes when exiting.
Florian Forster [Fri, 30 Mar 2007 19:26:09 +0000 (21:26 +0200)]
nut plugin: Added a plugin to query the `upsd' from the `network ups tools'.
Florian Forster [Thu, 29 Mar 2007 17:22:11 +0000 (19:22 +0200)]
Merge branch 'pull/collectd-4' into collectd-4
Florian Forster [Thu, 29 Mar 2007 17:21:14 +0000 (19:21 +0200)]
Implemented `LoadDS' which tells plugins to only register their DataSources.
Florian Forster [Wed, 28 Mar 2007 15:43:57 +0000 (17:43 +0200)]
configure.in: Define `HAVE_LIBKSTAT' when the `kstat'-library exists.
Florian Forster [Wed, 28 Mar 2007 12:47:50 +0000 (14:47 +0200)]
{csv,network} plugin: Improved debug messages.
Florian Forster [Wed, 28 Mar 2007 07:20:31 +0000 (09:20 +0200)]
plugin.c: Implemented parallel reading of values.
Florian Forster [Wed, 28 Mar 2007 06:38:02 +0000 (08:38 +0200)]
network plugin: Implemented cache flush.
Florian Forster [Tue, 27 Mar 2007 21:25:52 +0000 (23:25 +0200)]
rrdtool plugin: Serialise access to the cache and to the function from the librrd.
Florian Forster [Tue, 27 Mar 2007 21:00:12 +0000 (23:00 +0200)]
logfile plugin: Don't use `access' when adding a logfile: It does not work as expected.
Of as advertised in the manpage, for that matter.
Florian Forster [Tue, 27 Mar 2007 17:48:44 +0000 (19:48 +0200)]
network plugin: Don't loop multicast-pakets back to ourself.
Also, some debug-messages have been changed.
Florian Forster [Tue, 27 Mar 2007 16:58:56 +0000 (18:58 +0200)]
network plugin: Implemented duplicate detection and a `Forward' option.
The plugin will now only send values received via the network, if the `Forward'
option is set to `true'. Also, duplicates are detected and discarded,
preventing loops, duplicate entries and errors from RRDTool.
Florian Forster [Tue, 27 Mar 2007 15:24:21 +0000 (17:24 +0200)]
unixsock plugin: Use `format_name' rather than the local `cache_alloc_name'.
Florian Forster [Tue, 27 Mar 2007 15:23:51 +0000 (17:23 +0200)]
common.[ch]: Provide a function `format_name' to turn a value-list into its string representation.
Florian Forster [Tue, 27 Mar 2007 14:31:51 +0000 (16:31 +0200)]
{processes,unixsock} plugin: Remove annoying debug messages.
Florian Forster [Tue, 27 Mar 2007 14:31:22 +0000 (16:31 +0200)]
network plugin: Fix shutdown code.
Florian Forster [Tue, 27 Mar 2007 14:31:01 +0000 (16:31 +0200)]
plugin.[ch]: Implemented `plugin_unregister_config'.
Florian Forster [Tue, 27 Mar 2007 14:10:16 +0000 (16:10 +0200)]
sensors plugin: Fix programming mistakes.
Florian Forster [Tue, 27 Mar 2007 13:09:46 +0000 (15:09 +0200)]
syslog plugin: Fixed typo. s/sevetiry/severity/g;
Florian Forster [Tue, 27 Mar 2007 13:09:14 +0000 (15:09 +0200)]
collectd.conf(5): Documented the `iptables', `logfile', `processes', `syslog', and `unixsock' plugin.
Florian Forster [Tue, 27 Mar 2007 13:08:03 +0000 (15:08 +0200)]
collectd.conf.in: Added the `df' and `email' plugins.
Florian Forster [Tue, 27 Mar 2007 13:07:23 +0000 (15:07 +0200)]
logfile plugin: Don't call `access' with `stdout' and `stderr'.
Florian Forster [Mon, 26 Mar 2007 16:44:27 +0000 (18:44 +0200)]
Removed the `LOGFILE' and `COLLECT_{STEP,HEARTBEAT,XFF,RRAROWS}' defines.
Florian Forster [Mon, 26 Mar 2007 14:29:07 +0000 (16:29 +0200)]
network plugin: Fixed quite some bugs.
Florian Forster [Mon, 26 Mar 2007 12:41:01 +0000 (14:41 +0200)]
Added Perl-module `Collectd::Unixsock' to contrib/
Florian Forster [Mon, 26 Mar 2007 12:39:52 +0000 (14:39 +0200)]
unixsock plugin: Fixed many issues. `GETVAL' and `PUTVAL' are now mostly working as intended.
Florian Forster [Mon, 26 Mar 2007 12:38:29 +0000 (14:38 +0200)]
collectd.conf.in: Updated and sorted the example configfile.
Florian Forster [Mon, 26 Mar 2007 09:35:15 +0000 (11:35 +0200)]
interface plugin: Renamed the `traffic' plugin to `interface'.
Florian Forster [Mon, 26 Mar 2007 09:24:41 +0000 (11:24 +0200)]
logfile plugin: Renamed functions and changed error-messages to reflect the renaming.
Florian Forster [Mon, 26 Mar 2007 09:09:28 +0000 (11:09 +0200)]
Removed `utils_debug.[ch]' since debugging output is now handeled by the logging-statements.
Florian Forster [Mon, 26 Mar 2007 09:02:20 +0000 (11:02 +0200)]
logfile plugin: Renamed the `stderr' to `logfile'.
Florian Forster [Mon, 26 Mar 2007 08:57:52 +0000 (10:57 +0200)]
stderr plugin: Add `File' config option to log to a certain file.
Also make the actual log-action thread-safe.
Sebastian Harl [Sun, 25 Mar 2007 21:40:02 +0000 (23:40 +0200)]
stderr plugin: Added "stderr" plugin to log to stderr.
This plugin is heavily based on Florian's syslog plugin.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Mon, 26 Mar 2007 08:23:35 +0000 (10:23 +0200)]
plugin.c: Check if `list_log' is not NULL.
Florian Forster [Mon, 26 Mar 2007 08:15:04 +0000 (10:15 +0200)]
Replace all calls to `strerror' with `sstrerror'
.. which internally uses the thread-safe function `strerror_r'.
Florian Forster [Fri, 16 Mar 2007 10:45:15 +0000 (11:45 +0100)]
iptables plugin: Remove `iptables_init' because it's not needed..
..and it causes the build to fail when `libiptc' wasn't present.
Florian Forster [Thu, 15 Mar 2007 20:07:18 +0000 (21:07 +0100)]
src/collectd.h: Don't load `syslog.h'.
Plugins should use `plugin_log' now.
Florian Forster [Thu, 15 Mar 2007 18:34:46 +0000 (19:34 +0100)]
Replace all syslog-calls with one of the new logging-macros.
Florian Forster [Thu, 15 Mar 2007 18:05:23 +0000 (19:05 +0100)]
iptables plugin: Converted to the new plugin interface.
Florian Forster [Thu, 15 Mar 2007 17:33:12 +0000 (18:33 +0100)]
Merge branch 'master' into collectd-4
Conflicts:
configure.in
Florian Forster [Wed, 14 Mar 2007 22:24:38 +0000 (23:24 +0100)]
Merge branch 'sb/iptables'
Conflicts:
configure.in
src/Makefile.am
src/collectd.conf.in
Florian Forster [Wed, 14 Mar 2007 22:21:56 +0000 (23:21 +0100)]
src/collectd.conf.in: Added the iptables plugin.
Florian Forster [Wed, 14 Mar 2007 22:21:36 +0000 (23:21 +0100)]
iptables plugin: Implemented selection by rule-numbers.
Florian Forster [Wed, 14 Mar 2007 08:55:51 +0000 (09:55 +0100)]
syslog plugin: Added a `syslog' plugin which logs to syslog, using the new `log' interface.
Florian Forster [Wed, 14 Mar 2007 08:55:05 +0000 (09:55 +0100)]
src/plugin.[ch]: Add `log' callbacks.
Florian Forster [Mon, 12 Mar 2007 11:43:18 +0000 (12:43 +0100)]
collectd-nagios, rrdtool plugin, unixsock plugin: Use `isnan' rather than `==' or `!='.
Florian Forster [Mon, 12 Mar 2007 11:42:07 +0000 (12:42 +0100)]
src/collectd.h: Define a useable `NAN', based on `configure's findings.