Florian Forster [Sat, 13 Jan 2007 15:39:44 +0000 (16:39 +0100)]
rrdtool plugin: Fixed misc. bugs and changed license to GPLv2 only.
Florian Forster [Sat, 13 Jan 2007 11:21:16 +0000 (12:21 +0100)]
common.c: Implemented `ntohll' and `htonll'.
Florian Forster [Wed, 6 Dec 2006 20:50:21 +0000 (21:50 +0100)]
load plugin: Made the data source variable `static'.
Also removed the `filename' member from `data_set_t' because it's not used.
Florian Forster [Wed, 6 Dec 2006 20:46:47 +0000 (21:46 +0100)]
load plugin: Converted to the new plugin structure.
Florian Forster [Wed, 6 Dec 2006 20:24:56 +0000 (21:24 +0100)]
rrdtool plugin: First implementation of an rrdtool write plugin.
Many functions have been moved from `common.c' to a new file `rrdtool.c'. The
new plugin compiles, but has not yet been testet.
Florian Forster [Wed, 6 Dec 2006 17:43:56 +0000 (18:43 +0100)]
plugins: Implement a first version of the new plugin mechanismn.
Instead of the impractical `plugin_register' function, provide a variety of
different register functions, so plugin can `hook in' at various stages of the
daemon.
The most important new hook is likely the `write' hook which will allow for
generic `output plugins' to be plugged in.
Florian Forster [Wed, 6 Dec 2006 17:38:10 +0000 (18:38 +0100)]
src/utils_llist.[ch]: Added a generic linked list implementation.
Florian Forster [Tue, 5 Dec 2006 20:42:16 +0000 (21:42 +0100)]
src/utils_dns.c: Implemented a handler for `DLT_LINUX_SLL'.
This is the ``Linux cooked capture encapsulation'', which is at least returned
when capturing the `any' device under Linux. This patch will strip off the
header and pass the packet to the IPv4 or IPv6 handler, whichever one is
ppropriate.
Florian Forster [Tue, 5 Dec 2006 19:59:14 +0000 (20:59 +0100)]
Merge branch 'aw/spamassassin'
Florian Forster [Tue, 5 Dec 2006 19:53:45 +0000 (20:53 +0100)]
Merge branch 'ls/shutdown'
Lubos Stanek [Tue, 5 Dec 2006 18:09:33 +0000 (19:09 +0100)]
sensors plugin: declare variables only if SENSORS_HAVE_READ
Signed-off-by: Stanek Lubos <kolektor@atlas.cz>
Florian Forster [Tue, 5 Dec 2006 17:08:15 +0000 (18:08 +0100)]
Merge branch 'ls/shutdown'
Lubo¹ Stanìk [Tue, 5 Dec 2006 15:34:28 +0000 (16:34 +0100)]
sensors plugin: fix shutdown for SENSORS_HAVE_READ
Sorry, too many changes for me to observe at once.
Signed-off-by: Stanek Lubos <kolektor@atlas.cz>
Lubo¹ Stanìk [Tue, 5 Dec 2006 15:23:10 +0000 (16:23 +0100)]
sensors plugin: shutdown implementation
Signed-off-by: Stanek Lubos <kolektor@atlas.cz>
Lubo¹ Stanìk [Tue, 5 Dec 2006 15:15:55 +0000 (16:15 +0100)]
sensors plugin: SENSORS_HAVE_READ unification
Signed-off-by: Stanek Lubos <kolektor@atlas.cz>
Florian Forster [Tue, 5 Dec 2006 17:00:57 +0000 (18:00 +0100)]
Merge branch 'sh/shutdown'
Sebastian Harl [Mon, 4 Dec 2006 12:53:16 +0000 (13:53 +0100)]
email plugin: Shutdown cleanly.
Using a shutdown function the email plugin closes any sockets, terminates all
running threads and removes the UNIX socket.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Mon, 4 Dec 2006 22:58:44 +0000 (23:58 +0100)]
email plugin: Make UNIX socket path configurable at compile time.
The prefix for the UNIX socket can be configured using the
COLLECTD_SOCKET_PREFIX macro. "email" will be prepended to it.
If you configure collectd using
CFLAGS="-DCOLLECTD_SOCKET_PREFIX='\"$path-\"'" ./configure
the socket will be found at "$path-email".
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Mon, 4 Dec 2006 21:47:34 +0000 (22:47 +0100)]
dns plugin: Remove unnecessary poll code and use the (blocking) `pcap_loop' function instead.
Not only does this simplify things *a lot* on *BSD and Mac OS X, because you
can't always call `poll' on their filedescriptors, it also simplifies the code
a lot and thus removes potential error sources.
Florian Forster [Mon, 4 Dec 2006 20:17:49 +0000 (21:17 +0100)]
dns plugin: Use the standard member names for `struct in6_addr' accesses.
The 32bit members apparently are Linux or glibc specific, so don't use them.
Florian Forster [Mon, 4 Dec 2006 12:13:17 +0000 (13:13 +0100)]
Imported Alexander's SpamAssassin-plugin to contrib/SpamAssassin/
Florian Forster [Mon, 4 Dec 2006 11:56:37 +0000 (12:56 +0100)]
configure.in: Set the default case for `--with--libpthread' to `yes'.
Also removed the `regex' output at the end of the configure run, because it was
empty.
Sebastian Harl [Mon, 4 Dec 2006 10:30:29 +0000 (11:30 +0100)]
plugin.[ch]: Added support for an optional plugin shutdown function.
A plugin may register a shutdown function using plugin_register_shutdown ().
This function is called when collectd terminates either during normal
termination or after SIGINT or SIGTERM have been received.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Mon, 4 Dec 2006 10:04:17 +0000 (11:04 +0100)]
dns plugin: Fixed a compile error if pcap.h is not found.
If pcap.h is not found, the compiler complains about some "defined but not
used" warnings. As we're using -Werror this causes the build to abort.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Sun, 3 Dec 2006 18:29:58 +0000 (19:29 +0100)]
ChangeLog: Collected the changes so far.
The new version needs to be released soon!
Florian Forster [Sun, 3 Dec 2006 18:05:15 +0000 (19:05 +0100)]
Merge branch 'ff/processes'
Florian Forster [Sun, 3 Dec 2006 17:43:53 +0000 (18:43 +0100)]
email plugin: Limit the `MaxConns' option by a hardcoded value.
Because typos (and ``typos'', i. e. dumb users) happen, it's better to not
allow INT_MAX connections. The problem is that on 32bit machines this would
a) create
2147483648 threads
b) allocate (at least) 512 GBytes of memory
which would result in certain death of either the daemon or the system.
This patch limits the number of connections (and thus threads and allocated
memory) to 16384, which ought to be enough for most people. Those, who need
more connections (and can accomplish this, even though there are quite narrow
OS limits) will need to recompile themselves.
Sebastian Harl [Sun, 3 Dec 2006 13:11:21 +0000 (14:11 +0100)]
email plugin: Made socket settings configurable.
Added config file support to the email plugin.
The following options are available:
* "SocketGroup <group name>"
Set the group the UNIX socket belongs to to <group name>.
* "SocketPerms <perms>"
Set the permissions of the UNIX socket to <perms>. No validation is done.
The user has to make sure reasonable values are given.
* "MaxConns <conns>"
The maximum number of concurrent connections is set to <conns>.
<perms> and <conns> may be given as decimal (no prefix), octal (prefix "0") or
sedecimal (a.k.a. hexadecimal, prefix "0x") values.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Sun, 3 Dec 2006 09:38:52 +0000 (10:38 +0100)]
email plugin: Make it possible to build the plugin write-only.
So far the plugin simply imported `pthread.h'. If this headerfile (or the
library for that case) was not present, building the plugin would fail. This
patch makes `libpthread' a soft dependency, i. e. it's only necessary if you
want to read from the socket. Without `libpthread' being available the plugin
can still be used in server processes.
Florian Forster [Sat, 2 Dec 2006 18:17:50 +0000 (19:17 +0100)]
Merge branches 'ff/dns' and 'sh/email' into next
Conflicts:
configure.in
src/Makefile.am
Florian Forster [Sat, 2 Dec 2006 18:11:22 +0000 (19:11 +0100)]
dns plugin: Improved config checks for the pthread library.
The checks for the pthread-library have been extended to match the other
libraries being used. The dns plugin (in particular `utils_dns.c') has been
verified to build without `libpcap' being present.
Florian Forster [Sat, 2 Dec 2006 18:09:32 +0000 (19:09 +0100)]
dns plugin: Added the dns plugin to the sample `collectd.conf'.
Sebastian Harl [Thu, 30 Nov 2006 11:02:46 +0000 (12:02 +0100)]
email plugin: Use strtok_r() instead of strtok().
strtok() internally uses a static buffer and thus is not thread-safe.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Thu, 30 Nov 2006 11:02:10 +0000 (12:02 +0100)]
email plugin: Change owner and mode of the UNIX socket if possible.
Set the owner and mode to COLLECTD_GRP_NAME (defaulting to "collectd") and 0770
respectively. A couple of different daemons running as different users might
want to connect to it.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Sebastian Harl [Thu, 30 Nov 2006 11:01:32 +0000 (12:01 +0100)]
email plugin: Minor code cleanup.
Removed debugging output and whitespaces at end of lines.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Sat, 2 Dec 2006 16:51:58 +0000 (17:51 +0100)]
src/utils_ignorelist.c: Fix build-problems when building without regex support.
Florian Forster [Sat, 2 Dec 2006 16:51:16 +0000 (17:51 +0100)]
dns plugin: Check for `libpthread' and link the plugin against it.
Florian Forster [Sat, 2 Dec 2006 16:50:37 +0000 (17:50 +0100)]
dns plugin: Use `pthread_sigmask' rather than `signal'.
Florian Forster [Sat, 2 Dec 2006 15:30:38 +0000 (16:30 +0100)]
dns plugin: Use threads rather than two processes and a pipe.
This is not only much simpler, code wise, but also more elegant and hopefully
faster. This code is alpha quality at best.
Sebastian Harl [Tue, 28 Nov 2006 12:39:51 +0000 (13:39 +0100)]
New plugin "email" to collectd ham, spam, ... statistics
This plugin collects email count and size for each type (e.g. ham, spam,
virus, ...) of emails, spam score values and the count of successful spam
checks (e.g. BAYES_99, SUBJECT_DRUG_GAP_C, ...).
These information are provided by external programs which communicate with the
plugin thru a UNIX socket and a simple line-based protocol:
/* e-mail type (e.g. ham, spam, virus, ...) and size */
e:<type>:<bytes>
/* spam score */
s:<value>
/* successful spam checks */
c:<type1>[,<type2>,...]
At most MAX_CONNS (currently set to 5) clients can connect to the plugin
simultaneously. Each connection is handled by a separate thread. Any input
line is limited to 256 characters (including the newline character) which
ought to be enough for anybody[tm] by definition. "c"-lines have to be split
up if they grow longer.
Signed-off-by: Sebastian Harl <sh@tokkee.org>
Florian Forster [Tue, 28 Nov 2006 14:42:56 +0000 (15:42 +0100)]
configure.in: Removed `src/libconfig' from the list of subdirs requireing configuration.
Florian Forster [Tue, 21 Nov 2006 17:14:36 +0000 (18:14 +0100)]
Merge branch 'ff/dns'
Conflicts:
configure.in
contrib/collection.cgi
Lubos Stanek [Tue, 21 Nov 2006 16:13:56 +0000 (17:13 +0100)]
df plugin: Match `spec_device' rather than `device' when matching the `Device' ignorelist.
Florian Forster [Tue, 21 Nov 2006 16:10:52 +0000 (17:10 +0100)]
src/Makefile.am: Install the `collectd.conf' with restricted permissions, 0640.
Thanks to Lubos for suggesting this :)
Lubos Stanek [Tue, 21 Nov 2006 16:00:54 +0000 (17:00 +0100)]
df plugin: Fix a nasty bug in the config routine. It effectively disabled the `IgnoreSelected' option.
Florian Forster [Tue, 21 Nov 2006 10:08:51 +0000 (11:08 +0100)]
sensors plugin: Declare static arrays only if they're being used, i. e. if libsensors exists.
Florian Forster [Tue, 21 Nov 2006 10:03:57 +0000 (11:03 +0100)]
processes plugin: Implemented detailed process statistics for Darwin/Mac OS X
Florian Forster [Mon, 20 Nov 2006 18:49:09 +0000 (19:49 +0100)]
collectd.conf(5): Documented the new selection options of the df-plugin.
Florian Forster [Mon, 20 Nov 2006 18:18:53 +0000 (19:18 +0100)]
configure.in: Remove the `--with-regex' option and check for `regex.h' everywhere.
Florian Forster [Mon, 20 Nov 2006 17:16:34 +0000 (18:16 +0100)]
df plugin: Make use of the new ignorelist functionality.
Florian Forster [Mon, 20 Nov 2006 17:15:39 +0000 (18:15 +0100)]
src/utils_ignorelist.c: Allow the `entry' argument to be NULL/empty.
Also assert the object to be non-empty.
Florian Forster [Mon, 20 Nov 2006 16:47:26 +0000 (17:47 +0100)]
src/utils_ignorelist.[ch]: Remove the `ignorelist_num' function and associated code.
Florian Forster [Mon, 20 Nov 2006 16:41:30 +0000 (17:41 +0100)]
src/utils_ignorelist.[ch]: Renamed some functions. Internal changes.
Mostly renamed variables, but also changed some return values and inserted
asserts where appropriate.
Florian Forster [Sat, 18 Nov 2006 12:44:23 +0000 (13:44 +0100)]
Ignorelist: Renamed `src/config_list.[ch]' to `src/utils_ignorelist.[ch]'.
The interface has been changed to use the `ignorelist'-prefix rather than
`configlist', which is a confusing term for this functionality.
Lubos Stanek [Fri, 17 Nov 2006 20:15:14 +0000 (21:15 +0100)]
More improvementa on the ignorelist functionality.
I am sending the updated version of config_list.
I repaired the error freeing unallocated memory, modified regex for dynamically
allocated error message buffer and replaced '|' with '/'.
Lubos Stanek [Fri, 17 Nov 2006 19:54:16 +0000 (20:54 +0100)]
Improve and generalize the ignorelist functionality.
Florian Forster [Wed, 8 Nov 2006 14:04:59 +0000 (15:04 +0100)]
Change contrib/init.d-rh7 to sleep for a second between restarts.
Florian Forster [Tue, 7 Nov 2006 19:52:29 +0000 (20:52 +0100)]
Break out of the `nanosleep' loop if `loop' is set to non-zero.
Florian Forster [Mon, 6 Nov 2006 18:34:53 +0000 (19:34 +0100)]
plugin_read_all: Check the `loop' variable after each iteration and return early if the daemon is shutting down.
Lubos Stanek has reported that the daemon may stop too slow, resulting in it
being killed by impatient init-scripts. With this patch `plugin_read_all'
checks the `loop' variable before entering each plugin's read-function. If the
loop-variable is set to non-zero it will return early, allowing the daemon to
shutdown more instantly.
Florian Forster [Sun, 5 Nov 2006 17:27:13 +0000 (18:27 +0100)]
sensors plugin: Improved the documentation in the sample configfile and the `collectd.conf(5)' manpage.
Florian Forster [Sun, 5 Nov 2006 14:08:34 +0000 (15:08 +0100)]
sensors plugin: Some code cleanup.
Very long lines have been broken into several shorter ones. `strncmp' has been
replaced with `strcmp' where reasonable. Variables have been renamed and all
variable declarations have been moved to the top of the block, as required by
ANSI C prior to C99.
Florian Forster [Sun, 5 Nov 2006 12:16:07 +0000 (13:16 +0100)]
Merge branch 'master' into ls/sensors
Florian Forster [Sun, 5 Nov 2006 12:15:43 +0000 (13:15 +0100)]
Merge branch 'processes'
Florian Forster [Sun, 5 Nov 2006 12:10:09 +0000 (13:10 +0100)]
Merge branch 'master' into ff/dns
Florian Forster [Sun, 5 Nov 2006 12:05:50 +0000 (13:05 +0100)]
dns plugin: Corrected the handling of signals, i. e. don't catch them.
Florian Forster [Sat, 4 Nov 2006 12:56:25 +0000 (13:56 +0100)]
Merge branch 'collectd-3.10'
Florian Forster [Sat, 4 Nov 2006 12:49:07 +0000 (13:49 +0100)]
Bumped version to 3.10.3; Updated ChangeLog.
Florian Forster [Sat, 4 Nov 2006 12:18:06 +0000 (13:18 +0100)]
Merge branch 'collectd-3.10'
Lubos Stanek [Sat, 4 Nov 2006 12:17:07 +0000 (13:17 +0100)]
ntpd plugin: Use the `NI_MAXHOST' define for the fixed-size buffer `peername'.
Lubos Stanek [Sat, 4 Nov 2006 12:14:11 +0000 (13:14 +0100)]
ntpd plugin: Fix buffer reallocation when the message is send in more than one packet.
Florian Forster [Wed, 1 Nov 2006 15:39:51 +0000 (16:39 +0100)]
Merge branch 'collectd-3.10'
Florian Forster [Wed, 1 Nov 2006 15:20:51 +0000 (16:20 +0100)]
debian/: Removed one last unneccessary file.
Florian Forster [Wed, 1 Nov 2006 15:19:41 +0000 (16:19 +0100)]
debian/: Imported the files from Sebastian's Debian package, part 2.
Florian Forster [Wed, 1 Nov 2006 15:17:53 +0000 (16:17 +0100)]
debian/: Imported the files from Sebastian's Debian package.
Florian Forster [Wed, 1 Nov 2006 15:12:14 +0000 (16:12 +0100)]
configure.in, utils_mount.c: Improved the detection of the different `getmntent' variants.
The check provided by `autoconf' has been completely removed, since it doesn't
provide the information we need and it's internals seem to change more often
than is practical.
Florian Forster [Wed, 1 Nov 2006 10:46:42 +0000 (11:46 +0100)]
Bumped version to 3.10.2; Updated ChangeLog.
Florian Forster [Wed, 1 Nov 2006 10:34:16 +0000 (11:34 +0100)]
Merge branch 'ff/mysql'
Florian Forster [Wed, 1 Nov 2006 10:32:13 +0000 (11:32 +0100)]
mysql plugin: Don't give up when connecting to the database fails during `init'.
Instead a connection attempt is made in increasing intervals, up to one day.
Florian Forster [Wed, 1 Nov 2006 10:09:47 +0000 (11:09 +0100)]
Merge branch 'ff/ntpd'
Lubos Stanek [Wed, 1 Nov 2006 10:05:57 +0000 (11:05 +0100)]
sensors plugin: Improved the extended naming.
And changed indentation to be the same as anywhere else in the program.
Lubos Stanek [Wed, 1 Nov 2006 09:56:15 +0000 (10:56 +0100)]
collectd.conf.pod: Corrected typos and punctuations.
Lubos Stanek [Wed, 1 Nov 2006 09:52:28 +0000 (10:52 +0100)]
collectd.conf.in: Correct the example entry for the sensors plugin.
Florian Forster [Wed, 1 Nov 2006 08:43:35 +0000 (09:43 +0100)]
ntpd plugin: Pass a `struct sockaddr' to `getnameinfo', rather than a `struct in_addr'.
Thanks to Lubos Stanek for pointing me in the right direction :)
Florian Forster [Sat, 28 Oct 2006 08:16:44 +0000 (10:16 +0200)]
Merge branch 'master' into ff/dns
Florian Forster [Thu, 26 Oct 2006 20:33:18 +0000 (22:33 +0200)]
Merge branch 'collectd-3.10'
Florian Forster [Thu, 26 Oct 2006 20:32:19 +0000 (22:32 +0200)]
Merge branches 'ff/ping', 'ff/macosx-swap' and 'ff/netbsd' into collectd-3.10
Florian Forster [Thu, 26 Oct 2006 20:29:30 +0000 (22:29 +0200)]
collection.cgi: Label the values displayed as `Temperature' in the temperature graph.
Florian Forster [Thu, 26 Oct 2006 20:27:59 +0000 (22:27 +0200)]
collectd(1): Improved the information about sensors plugin's DSes.
Florian Forster [Wed, 25 Oct 2006 15:19:15 +0000 (17:19 +0200)]
dns plugin: Create traffic graphs for captured DNS packets.
Lubos Stanek [Wed, 25 Oct 2006 14:23:42 +0000 (16:23 +0200)]
sensors plugin: Improve the support for multiple chips and add an ignore functionality.
Date: Tue, 24 Oct 2006 19:09:35 +0200
From: Lubo?? Stan??k <lubek@users.sourceforge.net>
To: collectd@verplant.org
Subject: Re: [collectd] 3.10.1 - proposed patch to extend sensors plugin
Enhancements:
- precise sensor feature selection (chip-bus-address/type-feature) in the
ExtendedSensorNaming mode
- more sensor features (finite list)
- honor sensors.conf's ignored
- config Sensor option
- config IgnoreSelected option
- config ExtendedSensorNaming option
- modified DS'es to include proper information about type in the
ExtendedSensorNaming mode
- /type- differs from yours because of the conflict between the type and the
old DS in the ExtendedSensorNaming mode
- the contrib/collection.cgi is modified to support both modes
Florian Forster [Wed, 25 Oct 2006 14:18:29 +0000 (16:18 +0200)]
dns plugin: Collect and transfer byte counters for queries and replies.
Florian Forster [Wed, 25 Oct 2006 13:45:55 +0000 (15:45 +0200)]
Renamed more variables and functions and such from `named' -> `dns'
Florian Forster [Wed, 25 Oct 2006 13:43:10 +0000 (15:43 +0200)]
Renamed the `named'-plugin to `dns'-plugin.
Florian Forster [Mon, 23 Oct 2006 21:35:43 +0000 (23:35 +0200)]
src/utils_mount.c: Correct syntax errors in error-strings.
Florian Forster [Mon, 23 Oct 2006 21:34:16 +0000 (23:34 +0200)]
swap plugin: Removed unused variable `status' which aborted the build with gcc.
Florian Forster [Mon, 23 Oct 2006 16:17:07 +0000 (18:17 +0200)]
src/utils_mount.c: Prefer `getvfsstat' over `getfsstat' if both are present.
Apparently the `getfsstat' syscall is deprecated, so don't use it unless there
is no alternative.
Florian Forster [Mon, 23 Oct 2006 16:16:29 +0000 (18:16 +0200)]
src/urils_mount.c: Use `getvfsstat' on NetBSD, if available.
Florian Forster [Mon, 23 Oct 2006 11:43:22 +0000 (13:43 +0200)]
processes plugin: Only define `ps_list_register' if it is actually used.
Florian Forster [Sun, 22 Oct 2006 16:42:45 +0000 (18:42 +0200)]
ping plugin: Add the hosts during initialization, not when reading the config file.
Since adding a host to liboping might block when no nameserver can be reached
or another problem occures (normally this means network misconfiguration) it's
not the best idea to do this when reading the config file. At that point we
didn't fork to the background yet, so the boot process may hang which is not good.
Also, hosts that cannot be added right away are tried again in increasing intervals.
Florian Forster [Sun, 22 Oct 2006 16:32:58 +0000 (18:32 +0200)]
Merge branch 'sh-pidfile'