Code

Changed version to 3.6.0
authorocto <octo>
Tue, 17 Jan 2006 11:59:32 +0000 (11:59 +0000)
committerocto <octo>
Tue, 17 Jan 2006 11:59:32 +0000 (11:59 +0000)
Removed most plugin-packages.
Added mysql-package

ChangeLog
README
configure.in
debian/changelog
debian/collectd-mysql.files [new file with mode: 0644]
debian/collectd-users.files [deleted file]
debian/collectd.manpages [new file with mode: 0644]
debian/control
debian/rules
src/collectd.c
src/collectd.pod

index f4d3ce2a23f6dc911eb08e3bbe7a28010cfec4a2..ea681cfedebb9e2c257dbea90226033d71672fe3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,4 @@
-2005-12-17, Version 3.6.0
+2006-01-17, Version 3.6.0
        * A config file has been added. This allows for loading only specific
          plugins.
        * A `df' plugin has been added.
diff --git a/README b/README
index ca28e009f49117dc5c657b93e6c60518d081c948..0434c75d9df6404a3974b86a1ac33f782cef387f 100644 (file)
--- a/README
+++ b/README
@@ -20,6 +20,9 @@ Features
     - CPU frequency
       (For laptops with speed step or a similar technology)
 
+    - Mountpoint usage
+      (Basically the values `df(1)' delivers)
+
     - Disk utilization
       (Sectors read/written, number of read/write actions, time spent doing IO)
 
@@ -32,6 +35,9 @@ Features
     - Memory utilization
       (Memory occupied by running processes, page cache, buffer cache and free)
 
+    - MySQL server statistics
+      (Commands issued, handlers triggered and traffic sent/received)
+
     - NFS Procedures
       (Which NFS command were called how often. Only NFSv2 and NFSv3 right now)
 
@@ -68,12 +74,17 @@ Features
 Operation
 ---------
 
+  * collectd's configuration file can be found at `sysconfdir'/collectd.conf.
+    Run `collectd -h' for a list of builtin defaults. See `collectd.conf(5)'
+    for a list of options and a syntax description.
+
   * When running collectd writes system statistics in RRD-files. Per default
     they reside in `/var/lib/collectd'.
 
-  * collectd needs to run as user root, since only root can craft ICMP
-    packages needed to ping other hosts. collectd should NOT be installed
-    setui root since it can be used to overwrite valuable files..
+  * When using the `ping' plugin collectd needs to run as user root, since only
+    root can craft ICMP packages needed to ping other hosts. collectd should
+    NOT be installed setuid root since it can be used to overwrite valuable
+    files..
 
   * Sample scripts to generate graphs reside in `contrib/' in the source
     package or somewhere near `/usr/share/doc/collectd' in most distributions.
@@ -90,9 +101,6 @@ Operation
     30 minutes |        1680 |  35 days
      6 hours   |        1520 | 380 days
 
-  * Use `-c' to start in client-, `-s' to start in server-mode. Read the
-    manpage for details.
-
 
 Prerequisites
 -------------
@@ -105,6 +113,8 @@ Prerequisites
     If built without `librrd' the resulting binary will be `client only', i.e.
     will send it's values via multicast and not create any RRD files itself.
 
+  * libmysqlclient (optional)
+
   * lm-sensors (optional)
 
   * libstatgrab may be used to collect statistics on systems other than Linux
index fcc40551ef008f0fe185f2d627ba18d2afb742eb..02f9db861dd57121c7d0383f09bbafabbac9a235 100644 (file)
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT(collectd, 3.6.alpha2)
+AC_INIT(collectd, 3.6.0)
 AC_CONFIG_SRCDIR(src/collectd.c)
 AC_CONFIG_HEADERS(src/config.h)
 AM_INIT_AUTOMAKE(dist-bzip2)
index 215c322de2ad7fdbe0bd1386d6ae85b56c4619ee..c10fbbf98a7e726892b46a3f2003e4966b903875 100644 (file)
@@ -1,3 +1,18 @@
+collectd (3.6.0-1) unstable; urgency=low
+
+  * New upstream version
+  * New module `mysql'
+  * Removed all modules but `sensors' and `hddtemp' since they can be
+    (de)activated using the config file.
+
+ -- Florian Forster <octo@verplant.org>  Tue, 17 Jan 2006 12:50:28 +0200
+
+collectd (3.5.1-1) unstable; urgency=low
+
+  * New upstream version
+
+ -- Florian Forster <octo@verplant.org>  Sun, 18 Dec 2005 23:09:11 +0200
+
 collectd (3.5.0-1) unstable; urgency=low
 
   * New upstream version
diff --git a/debian/collectd-mysql.files b/debian/collectd-mysql.files
new file mode 100644 (file)
index 0000000..9ec399e
--- /dev/null
@@ -0,0 +1 @@
+usr/lib/collectd/mysql.so*
diff --git a/debian/collectd-users.files b/debian/collectd-users.files
deleted file mode 100644 (file)
index 8fd44ff..0000000
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/collectd/users.so*
diff --git a/debian/collectd.manpages b/debian/collectd.manpages
new file mode 100644 (file)
index 0000000..eaddce1
--- /dev/null
@@ -0,0 +1,2 @@
+src/collectd.1
+src/collectd.conf.5
index 941de0e0e537cd98e3c3731c2674f0352b10cce5..3c562e6e7bb70754135faa1749f5ec2159aafff2 100644 (file)
@@ -2,38 +2,19 @@ Source: collectd
 Section: utils
 Priority: optional
 Maintainer: Florian Forster <octo@verplant.org>
-Build-Depends: debhelper (>= 4.0.0), autotools-dev, librrd0-dev | librrd2-dev, libsensors-dev
+Build-Depends: debhelper (>= 4.0.0), autotools-dev, librrd0-dev | librrd2-dev, libsensors-dev, libmysqlclient14-dev
 Standards-Version: 3.6.1
 
 Package: collectd
 Architecture: any
 Depends: libc6, librrd0 | librrd2
-Suggests: collectd-sensors
+Suggests: collectd-hddtemp, collectd-mysql, collectd-sensors
 Description: Statistics collection daemon for filling RRD files.
  collectd is a small daemon written in C for performance. It reads various
- system statistics and updates RRD files, creating them if neccessary.
- Since the daemon doesn't need to startup every time it wants to update
- the files it's very fast and easy on the system. Also, the statistics are
- very fine grained since the files are updated every 10 seconds.
-
-Package: collectd-cpu
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for cpu usage.
- collectd module to collect CPU usage information.
-
-Package: collectd-cpufreq
-Architecture: any
-Depends: collectd (= ${Source-Version}), cpufreqd | powernowd | cpudyn
-Description: collectd module for cpu frequency collection.
- collectd module to collect current CPU frequency (when using SpeedStep or
- something like that).
-
-Package: collectd-disk
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for disk usage.
- collectd module to collect disk usage information.
+ system statistics and updates RRD files, creating them if neccessary. Since
+ the daemon doesn't need to startup every time it wants to update the files
+ it's very fast and easy on the system. Also, the statistics are very fine
+ grained since the files are updated every 10 seconds.
 
 Package: collectd-hddtemp
 Architecture: any
@@ -41,62 +22,15 @@ Depends: collectd (= ${Source-Version}), hddtemp
 Description: collectd module for harddisk temperatures.
  collectd module to collect harddisk temperatures using hddtemp.
 
-Package: collectd-load
+Package: collectd-mysql
 Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for system load.
- collectd module to collect the system load.
-
-Package: collectd-memory
-Architecture: any
-Depends: collectd (= ${Source-Version})
+Depends: collectd (= ${Source-Version}), libmysqlclient14
 Description: collectd module for memory utilization.
- collectd module to collect memory utilization.
-
-Package: collectd-nfs
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for NFS procedures.
- collectd module to collect NFS procedures counters.
-
-Package: collectd-ping
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for network latency.
- collectd module to collect ping roundtrip times.
-
-Package: collectd-processes
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for running processes.
- collectd module to collect the number of currently running processes.
+ collectd module to collect MySQL statistics. It links against
+ `libmysqlclient14' though other versions should do, too.
 
 Package: collectd-sensors
 Architecture: any
 Depends: collectd (= ${Source-Version}), libsensors3
 Description: collectd module for libsensors.
  collectd module to collect system temperatures.
-
-Package: collectd-serial
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for serial traffic.
- collectd module to collect traffic on the serial interfaces.
-
-Package: collectd-swap
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for swap usage.
- collectd module to collect swap usage information.
-
-Package: collectd-traffic
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for network traffic.
- collectd module to collect network traffic counters.
-
-Package: collectd-users
-Architecture: any
-Depends: collectd (= ${Source-Version})
-Description: collectd module for user count.
- collectd module to collect the number of users logged into the system.
index 25a9e29aa413f94214ca88abc10f983d54980883..938c1db830ee72df5e96fa873e5619a487e49ac0 100755 (executable)
@@ -18,7 +18,7 @@ DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
 CFLAGS = -Wall -g
 
-PLUGINS = cpu cpufreq disk hddtemp load memory nfs ping processes sensors serial swap traffic users
+PLUGINS = hddtemp mysql sensors
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
index aacc96e3d1de6c1f9b254454c90d9de7043e516f..38ff1567e146d8996738efb20b4eea1720a4419a 100644 (file)
@@ -135,6 +135,13 @@ static void exit_usage (char *name)
                        "                    Default: "CONFIGFILE"\n"
 #if COLLECT_DAEMON
                        "    -f              Don't fork to the background.\n"
+#endif
+                       "\nBuiltin defaults:\n"
+                       "  Config-File       "CONFIGFILE"\n"
+                       "  PID-File          "PIDFILE"\n"
+                       "  Data-Directory    "PKGLOCALSTATEDIR"\n"
+#if COLLECT_DEBUG
+                       "  Log-File          "LOGFILE"\n"
 #endif
                        "\n"PACKAGE" "VERSION", http://verplant.org/collectd/\n"
                        "by Florian octo Forster <octo@verplant.org>\n"
@@ -269,8 +276,7 @@ int main (int argc, char **argv)
        {
                int c;
 
-               /* FIXME */
-               c = getopt (argc, argv, "C:"
+               c = getopt (argc, argv, "hC:"
 #if COLLECT_DAEMON
                                "f"
 #endif
index 515cba6a5e5713eb3f795124e96e607d29a177a8..d926017bbb6d1cbdae48793587d52c3bd46e9f44 100644 (file)
@@ -20,6 +20,10 @@ CPU utilization (I<cpu>)
 
 =item
 
+Mountpoint usage (I<df>)
+
+=item
+
 Disk and partition usage/throughput (I<disk>)
 
 =item
@@ -36,6 +40,10 @@ Memory usage (I<memory>)
 
 =item
 
+MySQL statistics (I<mysql>)
+
+=item
+
 NFS utilization (I<nfs>, Linux only)
 
 =item
@@ -129,6 +137,11 @@ The DS'es depend on the module creating the RRD files:
   DS:idle:COUNTER:25:0:100
   DS:wait:COUNTER:25:0:100
 
+=item Mountpoints (F<df-I<E<lt>pathE<gt>>.rrd>)
+
+  DS:used:GAUGE:25:0:U
+  DS:free:GAUGE:25:0:U
+
 =item Diskstats (F<disk-I<E<lt>majorE<gt>>-I<E<lt>minorE<gt>>.rrd>)
 
   DS:rcount:COUNTER:25:0:U
@@ -164,6 +177,10 @@ The DS'es depend on the module creating the RRD files:
   DS:buffers:GAUGE:25:0:9223372036854775807
   DS:cached:GAUGE:25:0:9223372036854775807
 
+=item MySQL statistics (F<mysql_commands-I<E<lt>commandE<gt>>.rrd> and F<mysql_handler-I<E<lt>handlerE<gt>>.rrd>)
+
+  DS:value:COUNTER:25:0:U
+
 =item NFSv2 Procedures (F<nfs2_procedures-I<(client|server)>.rrd>)
 
   DS:null:COUNTER:25:0:U
@@ -298,7 +315,7 @@ On multi-homed machines you may need to add a route to the multicast net
 (B<224.0.0.0/4>) if multicast packages take the wrong interface. The listener
 on the other hand listens on B<all> interfaces.
 
-=head1 SPECIAL MODULES
+=head1 SPECIAL PLUGINS
 
 =head2 cpufreq
 
@@ -307,6 +324,19 @@ the first CPU installed) to get the current CPU frequency. If this file does
 not exist make sure B<cpufreqd> (L<http://cpufreqd.sourceforge.net/>) or a
 similar tool is installed.
 
+=head2 mysql
+
+Requires B<mysqlclient> to be installed. It connects to the database when
+started and keeps the connection up as long as possible. When the connection is
+interrupted for whatever reason it will try to re-connect. The syslog will
+contain loud complaints in case anything goes wrong.
+
+This plugin issues C<SHOW STATUS> and evaluates C<Bytes_{received,sent}>,
+C<Com_*> and C<Handler_*> which correspond to F<traffic-mysql.rrd>,
+F<mysql_commands-*.rrd> and F<mysql_handler-*.rrd>. Please refer to the B<MySQL
+reference manual>, I<5.2.4. Server Status Variables> for an explanation of
+these values.
+
 =head2 sensors
 
 The B<sensors> module uses lm_sensors to retrieve sensor-values. This means