Code

collectd.git
16 years agoMerge branch 'ps/reuse'
Florian Forster [Tue, 4 Dec 2007 09:04:56 +0000 (10:04 +0100)]
Merge branch 'ps/reuse'

16 years agoexamples/MyPlugin.pm: Updated for new version of the perl plugin.
Sebastian Harl [Mon, 26 Nov 2007 11:20:31 +0000 (12:20 +0100)]
examples/MyPlugin.pm: Updated for new version of the perl plugin.

 * use Collectd.pm and removed "Collectd::" prefix
 * pass callbacks by name to plugin_register()

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agoUnmarked the perl plugin to be experimental.
Sebastian Harl [Mon, 26 Nov 2007 11:19:48 +0000 (12:19 +0100)]
Unmarked the perl plugin to be experimental.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agocollectd-perl(5): Replaced "BUGS" with "CAVEATS" section.
Sebastian Harl [Mon, 26 Nov 2007 11:19:17 +0000 (12:19 +0100)]
collectd-perl(5): Replaced "BUGS" with "CAVEATS" section.

The bugs section is no longer relevant, however, the users should be warned
about some (mostly Perl ithread specific) limitations.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agoperl plugin: Fixed a memory leak in pplugin_register_data_set().
Sebastian Harl [Mon, 26 Nov 2007 11:17:26 +0000 (12:17 +0100)]
perl plugin: Fixed a memory leak in pplugin_register_data_set().

The data set definition is copied by plugin_register_data_set() (in plugin.c)
and thus should be freed after it has been passed on to the plugin module.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agocollectdmon: Added SIGHUP handler to restart collectd.
Sebastian Harl [Sun, 25 Nov 2007 14:33:15 +0000 (15:33 +0100)]
collectdmon: Added SIGHUP handler to restart collectd.

This might be useful for init scripts and the like to restart the collectd
process only.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agocollectdmon(1): Added manpage for collectdmon.
Sebastian Harl [Sun, 25 Nov 2007 13:55:46 +0000 (14:55 +0100)]
collectdmon(1): Added manpage for collectdmon.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agocollectdmon: Added a small daemon monitoring collectd.
Sebastian Harl [Sun, 25 Nov 2007 13:54:05 +0000 (14:54 +0100)]
collectdmon: Added a small daemon monitoring collectd.

This is a small "wrapper" daemon which starts and monitors the collectd
daemon. If collectd terminates it will automatically be restarted, unless
collectdmon was told to shut it down.

Current features:

 * restarting the daemon
 * logging to syslog
 * detection of quickly, repeatedly respawning processes
   (similar to SysV init)

collectdmon is similar to mysqld_safe.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agonetwork plugin: Set SO_REUSEADDR on socket so multiple listeners can share port
Pavel Shramov [Thu, 29 Nov 2007 10:37:22 +0000 (13:37 +0300)]
network plugin: Set SO_REUSEADDR on socket so multiple listeners can share port

This patch allows other programs to bind same port and process data from clients
not interfering with master collectd server.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agosrc/utils_avltree.h: Improved the documentation.
Florian Forster [Sat, 24 Nov 2007 13:10:10 +0000 (14:10 +0100)]
src/utils_avltree.h: Improved the documentation.

The `key' argument is not copied and freed automatically. This was
insufficiently documented in the documentation..

16 years agologfile plugin: Default to $localstatedir/log/collectd.log instead of STDOUT.
Sebastian Harl [Sat, 17 Nov 2007 19:50:00 +0000 (20:50 +0100)]
logfile plugin: Default to $localstatedir/log/collectd.log instead of STDOUT.

Imho STDOUT is only a useful default during debugging (which should be by far
the less common case ;-). In any other case it might just "pollute" the
messages printed by e.g. the init script.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agocollectd.conf(5): Fixed some typos.
Sebastian Harl [Thu, 22 Nov 2007 09:40:20 +0000 (10:40 +0100)]
collectd.conf(5): Fixed some typos.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
16 years agoperl plugin: Made global variables available to Perl plugins.
Sebastian Harl [Wed, 21 Nov 2007 21:00:42 +0000 (22:00 +0100)]
perl plugin: Made global variables available to Perl plugins.

The "let's become magical" commit.

Each global variable (currently hostname_g and interval_g) will be exported by
introducing an equally named Perl variable. Perl's concept of "magic" is used
to create a read/write interface to the C variables (think of the variables as
being tied). This way any changes to the C variables will be immediately
accessible from the Perl plugin and vice versa.

17 years agoperl plugin: Improved some error messages.
Sebastian Harl [Mon, 19 Nov 2007 23:30:11 +0000 (00:30 +0100)]
perl plugin: Improved some error messages.

17 years agoperl plugin: Shut down an ithread if the embedding pthread terminates.
Sebastian Harl [Mon, 19 Nov 2007 23:20:25 +0000 (00:20 +0100)]
perl plugin: Shut down an ithread if the embedding pthread terminates.

Each ithread object is registered as thread specific data along with a
destructor function. If the embedding pthread terminates the destructor is
called which takes care of cleanly shutting down the appropriate Perl
interpreter and freeing any related resources.

17 years agoperl plugin: Fixed error in ithread shutdown loop.
Sebastian Harl [Sun, 18 Nov 2007 19:37:36 +0000 (20:37 +0100)]
perl plugin: Fixed error in ithread shutdown loop.

Using the sfree() macro, the loop variable was accidentally set to NULL at the
end of the loop, causing the loop to terminate after the first iteration.

17 years agoperl plugin: Execute END blocks in main thread only.
Sebastian Harl [Tue, 20 Nov 2007 07:45:22 +0000 (08:45 +0100)]
perl plugin: Execute END blocks in main thread only.

Each END block is executed during perl_destruct() which happens once for each
ithread. As the number of ithreads are in no way related to any Perl plugins
this is not what we want. Now, each END block is only executed when the main
threads terminates (which happens after any other Perl thread has been shut
down).

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agosrc/Makefile.am: Add installation directory defines to AM_CPPFLAGS.
Sebastian Harl [Sat, 17 Nov 2007 19:49:19 +0000 (20:49 +0100)]
src/Makefile.am: Add installation directory defines to AM_CPPFLAGS.

Those definitions used to be available when compiling collectd itself only.
However, they should be available to the plugins as well - else, different
paths would be used within different parts of collectd.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agocollectd-perl(5): Suggest the usage of -f when enabling the Perl debugger.
Sebastian Harl [Sat, 17 Nov 2007 19:48:29 +0000 (20:48 +0100)]
collectd-perl(5): Suggest the usage of -f when enabling the Perl debugger.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoCollectd.pm: Improved error handling of failed callbacks.
Sebastian Harl [Sat, 17 Nov 2007 17:45:58 +0000 (18:45 +0100)]
Collectd.pm: Improved error handling of failed callbacks.

If call_by_name() failed, it will be handled the same way as if the callback
returned "false". The $@ variable may now be used by plugins as well to
describe errors in greater detail.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agocollectd-perl(5): Updated documenation of plugin_register().
Sebastian Harl [Sat, 17 Nov 2007 17:44:57 +0000 (18:44 +0100)]
collectd-perl(5): Updated documenation of plugin_register().

Document the usage of names instead of references to identify callbacks.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoCollectd.pm: Use threads::shared to share @plugins between threads.
Sebastian Harl [Sat, 17 Nov 2007 17:43:19 +0000 (18:43 +0100)]
Collectd.pm: Use threads::shared to share @plugins between threads.

The list of plugins has to be common to all threads to be able to (un)register
callbacks after initialization. As threads::shared is not able to share
references to subroutines the callbacks now have to be identified by their
name. Collectd::call_by_name() is used to execute the callbacks.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoperl plugin: Removed newline from debugging output.
Sebastian Harl [Sat, 17 Nov 2007 17:41:46 +0000 (18:41 +0100)]
perl plugin: Removed newline from debugging output.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoperl plugin: Removed logging calls from call_by_name().
Sebastian Harl [Sat, 17 Nov 2007 17:41:08 +0000 (18:41 +0100)]
perl plugin: Removed logging calls from call_by_name().

The function might be called from a logging callback resulting in an infinite
loop. Instead the error message is now saved in $@.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoperl plugin: Added Collectd::call_by_name().
Sebastian Harl [Sat, 17 Nov 2007 17:38:45 +0000 (18:38 +0100)]
perl plugin: Added Collectd::call_by_name().

This XSUB passes on a function call to a subroutine identified by its name
passed through $Collectd::cb_name. Collectd::call_by_name does not touch the
stack (unless in case of an error), thus any arguments and return values are
kept in place.

This function is meant to be used inside Collectd.pm only.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoCollectd.pm: Removed an unused variable.
Sebastian Harl [Wed, 14 Nov 2007 13:21:04 +0000 (14:21 +0100)]
Collectd.pm: Removed an unused variable.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoREADME: Added libperl to the list of dependencies.
Sebastian Harl [Wed, 14 Nov 2007 13:20:32 +0000 (14:20 +0100)]
README: Added libperl to the list of dependencies.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoCollectd.pm: Check for ithread support.
Sebastian Harl [Wed, 14 Nov 2007 13:20:08 +0000 (14:20 +0100)]
Collectd.pm: Check for ithread support.

Abort if perl has been compiled without ithread support (i.e.
$Config{'useithreads'} is not defined).

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoperl plugin: Added debugging output to display the ithread behavior.
Sebastian Harl [Wed, 14 Nov 2007 13:19:42 +0000 (14:19 +0100)]
perl plugin: Added debugging output to display the ithread behavior.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agobindings/Makefile.am: perl/Makefile depends on config.status.
Sebastian Harl [Tue, 13 Nov 2007 23:00:05 +0000 (00:00 +0100)]
bindings/Makefile.am: perl/Makefile depends on config.status.

Any configuration changes should be forwarded to the perl bindings. This patch
will cause perl/Makefile to be recreated after a rerun of the configure
script.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
17 years agoperl plugin: Added basic multi-threading support.
Sebastian Harl [Tue, 13 Nov 2007 22:59:25 +0000 (23:59 +0100)]
perl plugin: Added basic multi-threading support.

This patch maps each C thread, which accesses the perl plugin, to an
interpreter based Perl thread. The implementation has been inspired by Perl's
ithreads introduced in version 5.6.0 and should be compatible (as in: can be
used side-by-side) with it. You can use threads::shared to share data
structures between threads of either implementation.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
17 years agoperl plugin: Use PERL_NO_GET_CONTEXT.
Sebastian Harl [Tue, 13 Nov 2007 22:58:54 +0000 (23:58 +0100)]
perl plugin: Use PERL_NO_GET_CONTEXT.

All Perl_* API functions have been replaced with their unprefixed
counterparts. The currently used Perl interpreter is passed along to each
function requiring access to it. This removes the need to access the global
variable keeping the pointer to the Perl interpreter in most cases but the
entry points into the plugin (i.e. the callbacks registered with collectd).

This prepares the plugin to efficiently support multiple interpreters.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
17 years agoconfigure, perl plugin: Check for ithreads support.
Sebastian Harl [Tue, 13 Nov 2007 22:58:20 +0000 (23:58 +0100)]
configure, perl plugin: Check for ithreads support.

Disable the perl plugin if Perl does not support ithreads (introduced in Perl
5.6). The configure script will check, if USE_ITHREADS has been defined. Also,
the perl plugin won't build if it has not been defined.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
17 years agoMerge branch 'ff/fqdn'
Florian Forster [Tue, 13 Nov 2007 16:58:54 +0000 (16:58 +0000)]
Merge branch 'ff/fqdn'

17 years agocollectd: The new `FQDNLookup' option controls whether or not the FQDN should be...
Florian Forster [Tue, 13 Nov 2007 16:55:50 +0000 (16:55 +0000)]
collectd: The new `FQDNLookup' option controls whether or not the FQDN should be used.

So far the hostname as returned by `gethostname(2)' was used. This is not
practical for large setups.

To stay backwards compatible the option is disabled by default, but the sample
config file includes a line which sets this option so that (new) default
installations will have it enabled.

17 years agocsv plugin: Add the possibility to store rates of counter DSes.
Florian Forster [Sat, 10 Nov 2007 15:09:03 +0000 (16:09 +0100)]
csv plugin: Add the possibility to store rates of counter DSes.

17 years agocollectd.conf(5): Renamed the `libvirtstats' plugin to `libvirt'.
Florian Forster [Sat, 10 Nov 2007 13:02:32 +0000 (14:02 +0100)]
collectd.conf(5): Renamed the `libvirtstats' plugin to `libvirt'.

Also formatting and formulations have been changed a little.

17 years agolibvirt plugin: Renamed the `libvirtstats' plugin to `libvirt'.
Florian Forster [Sat, 10 Nov 2007 12:47:49 +0000 (13:47 +0100)]
libvirt plugin: Renamed the `libvirtstats' plugin to `libvirt'.

17 years agoMerge branch 'collectd-4.2'
Florian Forster [Thu, 8 Nov 2007 21:22:19 +0000 (22:22 +0100)]
Merge branch 'collectd-4.2'

Conflicts:

src/types.db

17 years agoBumped version to 4.2.1; Updated ChangeLog. collectd-4.2.1
Florian Forster [Thu, 8 Nov 2007 20:55:13 +0000 (21:55 +0100)]
Bumped version to 4.2.1; Updated ChangeLog.

17 years agoMerge branch 'collectd-4.1' into collectd-4.2
Florian Forster [Thu, 8 Nov 2007 18:49:17 +0000 (19:49 +0100)]
Merge branch 'collectd-4.1' into collectd-4.2

Conflicts:

ChangeLog
contrib/PerlLib/Collectd.pm
version-gen.sh

17 years agoBumped version to 4.1.4; Updated ChangeLog collectd-4.1.4
Florian Forster [Thu, 8 Nov 2007 09:49:54 +0000 (10:49 +0100)]
Bumped version to 4.1.4; Updated ChangeLog

17 years agoconfigure.in: Improved the detection of libxml2 and libvirt.
Florian Forster [Thu, 8 Nov 2007 09:03:16 +0000 (10:03 +0100)]
configure.in: Improved the detection of libxml2 and libvirt.

17 years agolibvirtstats plugin: Fix typos and other mistakes.
Florian Forster [Thu, 8 Nov 2007 07:26:03 +0000 (08:26 +0100)]
libvirtstats plugin: Fix typos and other mistakes.

I didn't find them before because I couldn't compile the plugin without the
library at hand.

17 years agoconfigure.in: Change the libvirt detection so it works with my non-standard path.
Florian Forster [Thu, 8 Nov 2007 07:25:10 +0000 (08:25 +0100)]
configure.in: Change the libvirt detection so it works with my non-standard path.

17 years agolibvirtstats plugin: Minor cleanups.
Florian Forster [Wed, 7 Nov 2007 22:07:24 +0000 (23:07 +0100)]
libvirtstats plugin: Minor cleanups.

17 years agocontrib/collection.cgi: Fix the types related to the processes plugin.
Florian Forster [Wed, 7 Nov 2007 16:52:01 +0000 (16:52 +0000)]
contrib/collection.cgi: Fix the types related to the processes plugin.

17 years agocontrib/collection.cgi: Fix the ps_rss graph.
Florian Forster [Wed, 7 Nov 2007 09:33:51 +0000 (09:33 +0000)]
contrib/collection.cgi: Fix the ps_rss graph.

17 years agocontrib/collection.cgi: Add some missing types and labels.
Florian Forster [Wed, 7 Nov 2007 09:29:23 +0000 (09:29 +0000)]
contrib/collection.cgi: Add some missing types and labels.

17 years agosrc/Makefile.am: Fix "make dist" to include utils_threshold.h
Chris Lalancette [Wed, 7 Nov 2007 07:39:59 +0000 (08:39 +0100)]
src/Makefile.am: Fix "make dist" to include utils_threshold.h

Hello,

Attached is a trivial Makefile patch so that when using "make dist", you
actually get the src/utils_threshold.h file, which is needed to successfully
build.

Signed-off-by: Chris Lalancette <clalance@redhat.com>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agolibvirtstats plugin: Add the `HostnameFormat' option.
Richard Jones [Tue, 6 Nov 2007 18:46:29 +0000 (19:46 +0100)]
libvirtstats plugin: Add the `HostnameFormat' option.

This is something I missed out of the previous patch: I want a way to log
guests using their UUID instead of their name (more useful for us because of
the migration and other issues outlined before).

This adds:

   <Plugin libvirtstats>
     HostnameFormat "uuid"
   </Plugin>

to let us do that. You can do other things as well such as:

   HostnameFormat "name uuid"

to get "foo:1234-1234-1234-1234" as the hostname.

Rich.

17 years agoMerge branch 'rj/libvirtstats'
Florian Forster [Tue, 6 Nov 2007 17:23:45 +0000 (18:23 +0100)]
Merge branch 'rj/libvirtstats'

Conflicts:

AUTHORS

17 years agoconfigure.in: Fixed spaces followed by tabs and trailing whitespaces.
Florian Forster [Tue, 6 Nov 2007 17:22:15 +0000 (18:22 +0100)]
configure.in: Fixed spaces followed by tabs and trailing whitespaces.

17 years agolibvirtstats plugin: Added a plugin to collect virtual host statistics.
Richard Jones [Tue, 6 Nov 2007 15:49:19 +0000 (15:49 +0000)]
libvirtstats plugin: Added a plugin to collect virtual host statistics.

  - rebased to git
  - includes updates to the manpage
  - ignorelist code now fixed
  - removed debugging messages

Attached is a plugin allowing collectd to use libvirt to collect CPU, disk and
network statistics for domains.

Usage

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agouuid plugin: Add a plugin which sets the hostname to an UUID.
Richard Jones [Tue, 6 Nov 2007 14:09:59 +0000 (14:09 +0000)]
uuid plugin: Add a plugin which sets the hostname to an UUID.

Florian Forster wrote:
> Just out of curiosity: Why don't hostnames work for you?

For guests there's the question of what we put in the hostname field. The
previous plugin (libvirtstats) puts the guest's name in this field, but there
are some problems with this:

   physicalserver1 <--- (hostname of physical server)
     |
      \--- database <--- (name of guest)
      \--- web

   physicalserver2
     |
      \--- database
      \--- web

   coldbackupserver
     |
     (no guests)

Guest names aren't really unique. Different physical servers may have guests
with overlapping names as in the example above. Also guest names aren't fixed.
Xen in particular renames guests at will. For example if a guest is about to
migrate then Xen renames the guest as 'migrating-foo' and if the guest is about
to shutdown Xen renames it as 'Zombie-foo'. The administrator of the physical
server can also rename guests.

While you're migrating you'll have an intermediate situation like this:

   physicalserver1
     |
      \--- migrating-database
      \--- migrating-web     |
                             | migration
   coldbackupserver          |
     |                       V
      \--- database
      \--- web

During live migrations the old instance ('migrating-foo') is still running.

The UUID is unique across physical servers, and is copied by migration and
preserved across shutdowns so if you care about which guest your stats "really"
came from then only the UUID tells you this.

Guests also have a hostname which is separate from the guest's name (the
guest's name is stored in the hypervisor, the hostname is stored inside the
guest's kernel). However it's not feasible to access the guest's hostname from
the hypervisor since this would involve some sort of snooping into the guest
kernel. The guest might be running Windows or FreeBSD etc. The only feasible
way to get this is to run an instance of collectd inside each guest, but then
the uuid plugin will also work in this scenario and can get the UUID since it
is exposed inside the guest either through an emulated BIOS or in
/sys/hypervisor/uuid.

Rich.

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoMerge branch 'collectd-4.1' into collectd-4.2
Florian Forster [Tue, 6 Nov 2007 16:40:35 +0000 (16:40 +0000)]
Merge branch 'collectd-4.1' into collectd-4.2

Conflicts:

contrib/README
src/snmp.c
src/types.db

17 years agosnmp plugin: Don't try to free the request PDU - it segfaults for some reason.
Florian Forster [Tue, 6 Nov 2007 16:37:53 +0000 (16:37 +0000)]
snmp plugin: Don't try to free the request PDU - it segfaults for some reason.

According to other code I've seen this is never done by anyone else, so this
must mean that the snmp library takes care of this somehow. Man, I love well
documented libraries!

17 years agosnmp plugin: Be even more eager to free PDU structures.
Florian Forster [Tue, 6 Nov 2007 16:20:29 +0000 (16:20 +0000)]
snmp plugin: Be even more eager to free PDU structures.

17 years agosnmp plugin: (Hopefully) fix a memory leak.
Florian Forster [Tue, 6 Nov 2007 15:53:49 +0000 (15:53 +0000)]
snmp plugin: (Hopefully) fix a memory leak.

17 years agocontrib/snmp-data.conf: Added even more UPS stuff.
Florian Forster [Tue, 6 Nov 2007 15:33:58 +0000 (15:33 +0000)]
contrib/snmp-data.conf: Added even more UPS stuff.

17 years agocontrib/fedora/collectd.spec: Updated for version 4.2.0
Iain Lea [Tue, 6 Nov 2007 07:17:15 +0000 (08:17 +0100)]
contrib/fedora/collectd.spec: Updated for version 4.2.0

17 years agoexec plugin: Allow arguments to be passed to the executed scripts.
Florian Forster [Sun, 4 Nov 2007 21:18:49 +0000 (22:18 +0100)]
exec plugin: Allow arguments to be passed to the executed scripts.

Untested! Also, you can use the new config option `NagiosExec' to execute
Nagios scripts. The not yet implemented `NotificationExec' is supposed to
dispatch notifications to executables.

17 years agoexec plugin: Set PID of failed programs back to zero.
Florian Forster [Sun, 4 Nov 2007 13:20:43 +0000 (14:20 +0100)]
exec plugin: Set PID of failed programs back to zero.

Otherwise the program will not be executed ever again after it failed once.

17 years agoexec plugin: Added markers to fold methods in vim.
Florian Forster [Sun, 4 Nov 2007 13:19:30 +0000 (14:19 +0100)]
exec plugin: Added markers to fold methods in vim.

17 years agocontrib/exec-munin.px: Added a simple Perl script which makes it possible to use...
Florian Forster [Sat, 3 Nov 2007 15:28:35 +0000 (16:28 +0100)]
contrib/exec-munin.px: Added a simple Perl script which makes it possible to use Munin plugins in collectd.

The script has an embedded POD documentation.

17 years agosrc/utils_threshold.c: Added creation of a notification.
Florian Forster [Thu, 1 Nov 2007 11:27:56 +0000 (12:27 +0100)]
src/utils_threshold.c: Added creation of a notification.

17 years agosrc/utils_threshold.[ch]: Added `ut_check_threshold' to check values against the...
Florian Forster [Thu, 1 Nov 2007 10:50:14 +0000 (11:50 +0100)]
src/utils_threshold.[ch]: Added `ut_check_threshold' to check values against the configures thesholds.

This function is called from `plugin_dispatch_values' and prints a warning when
the values is outside of the configured threshold.

17 years agoMerge branch 'pull/collectd-4.1' into collectd-4.1
Florian Forster [Thu, 1 Nov 2007 09:07:03 +0000 (10:07 +0100)]
Merge branch 'pull/collectd-4.1' into collectd-4.1

17 years agotcpconns plugin: Done complain when reading one of the files fails.
Florian Forster [Thu, 1 Nov 2007 09:06:52 +0000 (10:06 +0100)]
tcpconns plugin: Done complain when reading one of the files fails.

This should remove an error message on non-IPv6-enabled hosts..

17 years agosrc/configfile.c: Handle the `<Threshold>' block correctly.
Florian Forster [Thu, 1 Nov 2007 00:39:44 +0000 (01:39 +0100)]
src/configfile.c: Handle the `<Threshold>' block correctly.

I. e. pass it to `ut_config'.

17 years agosrc/utils_threshold.[ch]: Added the header file and initialize the AVL tree.
Florian Forster [Thu, 1 Nov 2007 00:39:13 +0000 (01:39 +0100)]
src/utils_threshold.[ch]: Added the header file and initialize the AVL tree.

17 years agocontrib/snmp-data.conf: Added some more RMSes and UPS stuff.
Florian Forster [Tue, 30 Oct 2007 17:15:58 +0000 (17:15 +0000)]
contrib/snmp-data.conf: Added some more RMSes and UPS stuff.

17 years agoMerge branch 'collectd-4.2'
Florian Forster [Tue, 30 Oct 2007 16:19:41 +0000 (16:19 +0000)]
Merge branch 'collectd-4.2'

17 years agoMerge branch 'collectd-4.1' into collectd-4.2
Florian Forster [Tue, 30 Oct 2007 16:19:04 +0000 (16:19 +0000)]
Merge branch 'collectd-4.1' into collectd-4.2

Conflicts:

src/collectd-snmp.pod

17 years agotypes.db: Fix a typo: s/humitidy/humidity/
Florian Forster [Tue, 30 Oct 2007 16:17:43 +0000 (16:17 +0000)]
types.db: Fix a typo: s/humitidy/humidity/

17 years agotypes.db: Ordered the entries alphabetically and added `voltage_threshold'.
Florian Forster [Tue, 30 Oct 2007 08:50:01 +0000 (09:50 +0100)]
types.db: Ordered the entries alphabetically and added `voltage_threshold'.

17 years agorrdtool plugin: Wait for the ``queue thread'' to exit _after_ signaling it to exit..
Florian Forster [Fri, 12 Oct 2007 20:59:15 +0000 (22:59 +0200)]
rrdtool plugin: Wait for the ``queue thread'' to exit _after_ signaling it to exit..

17 years agocollectd-snmp(5): Fix typos.
Florian Forster [Mon, 29 Oct 2007 16:42:13 +0000 (17:42 +0100)]
collectd-snmp(5): Fix typos.

17 years agosrc/utils_threshold.c: Added configuration code for threshold values.
Florian Forster [Sun, 28 Oct 2007 19:15:43 +0000 (20:15 +0100)]
src/utils_threshold.c: Added configuration code for threshold values.

The new module `utils_threshold' is supposed to check values and create and
dispatch a notification when the value is not within the threshold.

So far the code is only able to parse a configuration - and even that is
untested so far. It compiles, though ;)

17 years agosrc/utils_cache.c: Initialize the mutex correctly.
Florian Forster [Sun, 28 Oct 2007 19:07:28 +0000 (20:07 +0100)]
src/utils_cache.c: Initialize the mutex correctly.

17 years agosrc/plugin.[ch]: Added a notification type and auxiliary functions.
Florian Forster [Sun, 28 Oct 2007 17:45:46 +0000 (18:45 +0100)]
src/plugin.[ch]: Added a notification type and auxiliary functions.

17 years agosrc/utils_cache.c: Detect when a counter wraps around
Florian Forster [Sun, 28 Oct 2007 16:48:29 +0000 (17:48 +0100)]
src/utils_cache.c: Detect when a counter wraps around

and calculate the difference correctly.

17 years agocollectd.conf: Added nginx module.
Sebastian Harl [Sun, 28 Oct 2007 14:40:28 +0000 (15:40 +0100)]
collectd.conf: Added nginx module.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agosrc/utils_cache.[ch]: Added a global cache for all values that are dispatched.
Florian Forster [Sun, 28 Oct 2007 15:46:58 +0000 (16:46 +0100)]
src/utils_cache.[ch]: Added a global cache for all values that are dispatched.

The cache translates counter values to gauge values using the last counter
value available. This can then be used to check against threshold values, as
we'll need to do for monitoring functionality.

Right now the cache doesn't do much: It sits there and caches the values, but
is not yet ever queried. The already implemented (but so far unused) function
`uc_get_rate' returns an array of gauge_t values.

The longterm goal is to have the network, rrdtool and unixsock plugins use this
cache, too. This will require some `plugin specific' data with appropriate
control structures and, which is likely the hardest part, some clever locking
for all that.

17 years agoperl plugin: Set $0 to "collectd".
Sebastian Harl [Sun, 28 Oct 2007 09:50:24 +0000 (10:50 +0100)]
perl plugin: Set $0 to "collectd".

perl_parse() has to set it to "-e" which is not very meaningful. It would
be even nicer to set it to argv[0] but this is not available from inside
the plugin.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agocollectd.h: Removed legacy definition of operation modes.
Sebastian Harl [Sun, 28 Oct 2007 08:58:18 +0000 (09:58 +0100)]
collectd.h: Removed legacy definition of operation modes.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoplugin.h: Make DEBUG() a noop when compiling without debugging support.
Sebastian Harl [Sun, 28 Oct 2007 08:57:17 +0000 (09:57 +0100)]
plugin.h: Make DEBUG() a noop when compiling without debugging support.

This saves a couple of useless calls to plugin_log() which the compiler
does not detect and remove itself.

A couple of DEBUG()'s in the apcups, hddtemp, mbmon and ntpd plugins have
been upgraded to INFO()'s. All of them provide error messages of failed
system / libc calls which should be available to the user somehow.
Besides, they use a local string buffer which generates an "unused
variable" warning if DEBUG() expands to a noop.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agoChangeLog: Fix some spelling errors.
Florian Forster [Sat, 27 Oct 2007 10:00:18 +0000 (12:00 +0200)]
ChangeLog: Fix some spelling errors.

17 years agoBuild system: Removed the check for `libm'. collectd-4.2.0
Florian Forster [Sat, 27 Oct 2007 09:21:52 +0000 (11:21 +0200)]
Build system: Removed the check for `libm'.

It didn't work (there's no `ext' function) and wasn't used anywhere..

17 years agoMerge branch 'collectd-4.1'
Florian Forster [Sat, 27 Oct 2007 09:09:25 +0000 (11:09 +0200)]
Merge branch 'collectd-4.1'

17 years agoBumped version to 4.2.0; Updated ChangeLog.
Florian Forster [Sat, 27 Oct 2007 09:02:03 +0000 (11:02 +0200)]
Bumped version to 4.2.0; Updated ChangeLog.

17 years agoBuild system: Changed the detection of the sensors library to work like other libraries.
Florian Forster [Sat, 27 Oct 2007 08:52:38 +0000 (10:52 +0200)]
Build system: Changed the detection of the sensors library to work like other libraries.

17 years agoREADME: Added section about configuring, building and installing collectd.
Sebastian Harl [Fri, 26 Oct 2007 13:07:50 +0000 (15:07 +0200)]
README: Added section about configuring, building and installing collectd.

This section contains basic information about the "--enabled-<plugin>"
configuration option as well as adopting the installation target.

Signed-off-by: Sebastian Harl <sh@tokkee.org>
Signed-off-by: Florian Forster <octo@huhu.verplant.org>
17 years agocollectd.conf(5): Fix a typo.
Florian Forster [Fri, 26 Oct 2007 12:39:27 +0000 (14:39 +0200)]
collectd.conf(5): Fix a typo.

17 years agoChangeLog: Added a note about the new nginx plugin.
Florian Forster [Fri, 26 Oct 2007 08:52:48 +0000 (10:52 +0200)]
ChangeLog: Added a note about the new nginx plugin.

17 years agosrc/common.c: Serialize access to `strerror' if `strerror_r' doesn't exist.
Florian Forster [Fri, 26 Oct 2007 08:50:43 +0000 (10:50 +0200)]
src/common.c: Serialize access to `strerror' if `strerror_r' doesn't exist.

Apparently this is a problem under Solaris 9..

17 years agoBuild system: Fixed a bug in the detection of the snmp library.
Ronan Cadet [Fri, 26 Oct 2007 08:28:37 +0000 (10:28 +0200)]
Build system: Fixed a bug in the detection of the snmp library.

Hello,

During the creation of a rpm on Mandriva 2007.1 from tar.bz2 sources, and by
activate almost all options, I found something that seems a bug to me in the
configure file, line 33251 (concerning the snmp plugin)

17 years agoMerge branch 'collectd-4.1'
Florian Forster [Fri, 26 Oct 2007 08:08:28 +0000 (10:08 +0200)]
Merge branch 'collectd-4.1'

17 years agologfile plugin: Implemented an option to prefix logged lines with a timestamp.
Florian Forster [Fri, 26 Oct 2007 08:07:58 +0000 (10:07 +0200)]
logfile plugin: Implemented an option to prefix logged lines with a timestamp.

17 years agoBuild system: Set the appropriate CPPFLAGS and LDFLAGS when checking for librrd and...
Florian Forster [Thu, 25 Oct 2007 21:13:27 +0000 (23:13 +0200)]
Build system: Set the appropriate CPPFLAGS and LDFLAGS when checking for librrd and it's header.