Code

Merge branch 'collectd-4.1'
authorFlorian Forster <octo@leeloo.lan.home.verplant.org>
Fri, 12 Oct 2007 16:59:29 +0000 (18:59 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Fri, 12 Oct 2007 16:59:29 +0000 (18:59 +0200)
Conflicts:

ChangeLog

1  2 
ChangeLog
README
src/collectd.conf.in
src/collectd.conf.pod

diff --combined ChangeLog
index ac5e78c1abe116d8d608d058704cd1ea830320c5,099a5ca4272b50bb308ae866b949adfaa130ae24..24dc6908fd6a721530f8989d5f59e22fcc85f8da
+++ b/ChangeLog
@@@ -1,15 -1,5 +1,21 @@@
 +yyyy-mm-dd, Version 4.2.0
 +      * collectd: The new config option `Include' lets you include other
 +        configfiles and thus split up your config into smaller parts. This
 +        may be especially interresting for the snmp plugin to keep the data
 +        definitions seperate from the host definitions.
 +      * perl plugin: Many changes, including the added `EnableDebugger'
 +        config option which lets you debug your Perl plugins more easily.
 +      * snmp plugin: Added the options `Scale' and `Shift' to Data-blocks to
 +        correct the values returned by SNMP-agents.
 +      * ipvs plugin: The new `ipvs' plugin collects IPVS connection statistics
 +        (number of connections, octets and packets for each service and
 +        destination).
++      * rrdtool plugin: Use the threadsafe RRD-library if available. Try to
++        be more threadsafe otherwise by locking calls to the library.
++
++yyyy-mm-dd, Version 4.1.3
+       * rrdtool plugin: Use the threadsafe RRD-library if available. Try to
+         be more threadsafe otherwise by locking calls to the library.
  
  2007-09-28, Version 4.1.2
        * apcups plugin: Fix reporting of the `load percent' data.
diff --combined README
index cc6465ca697c9dd2f400c45d21367203c6f911ee,56dee295733b0459e38051e029b7ba4937abe2a8..338ea4b281bec020e26bd9ab11425b7fa33cfcd7
--- 1/README
--- 2/README
+++ b/README
@@@ -69,11 -69,6 +69,11 @@@ Feature
        Iptables' counters: Number of bytes that were matched by a certain
        iptables rule.
  
 +    - ipvs
 +      IPVS connection statistics (number of connections, octets and packets
 +      for each service and destination).
 +      See http://www.linuxvirtualserver.org/software/index.html.
 +
      - irq
        IRQ counters: Frequency in which certain interrupts occur.
  
      - tape
        Bytes and operations read and written on tape devices. Solaris only.
  
 +    - tcpconns
 +      Number of TCP connections to specific local and remote ports.
 +
      - users
        Users currently logged in.
  
@@@ -226,8 -218,8 +226,8 @@@ Operatio
    * When the `csv' or `rrdtool' plugins are loaded they'll write the values to
      files. The usual place for these files is beneath `/var/lib/collectd'.
  
-   * When using some of the plugins, collectd needs to run as user root, since only
-     root can do certain things, such as craft ICMP packages needed to ping
+   * When using some of the plugins, collectd needs to run as user root, since
+     only root can do certain things, such as craft ICMP packages needed to ping
      other hosts. collectd should NOT be installed setuid root since it can be
      used to overwrite valuable files!
  
      the values and read the rrdtool(1) manpage thoroughly.
  
  
+ collectd and chkrootkit
+ -----------------------
+   If you are using the `dns' plugin chkrootkit(1) will report collectd as a
+   packet sniffer ("<iface>: PACKET SNIFFER(/usr/sbin/collectd[<pid>])"). The
+   plugin captures all UDP packets on port 53 to analyze the DNS traffic. In
+   this case, collectd is a legitimate sniffer and the report should be
+   considered to be a false positive. However, you might want to check that
+   this really is collectd and not some other, illegitimate sniffer.
  Prerequisites
  -------------
  
  Crosscompiling
  --------------
  
-     To compile correctly collectd needs to be able to initialize static
-     variables to NAN (Not A Number). Some C libraries, especially the GNU
-     libc, have a problem with that.
+   To compile correctly collectd needs to be able to initialize static
+   variables to NAN (Not A Number). Some C libraries, especially the GNU
+   libc, have a problem with that.
  
-     Luckily, with GCC it's possible to work around that problem: One can define
-     NAN as being (0.0 / 0.0) and `isnan' as `f != f'. However, to test this
-     ``implementation'' the configure script needs to compile and run a short
-     test program. Obviously running a test program when doing a cross-
-     compilation is, well, challenging.
+   Luckily, with GCC it's possible to work around that problem: One can define
+   NAN as being (0.0 / 0.0) and `isnan' as `f != f'. However, to test this
+   ``implementation'' the configure script needs to compile and run a short
+   test program. Obviously running a test program when doing a cross-
+   compilation is, well, challenging.
  
-     If you run into this problem, you can use the `--with-nan-emulation'
-     configure option to force the use of this implementation. We can't promise
-     that the compiled binary actually behaves as it should, but since NANs
-     are likely never passed to the libm you have a good chance to be lucky.
+   If you run into this problem, you can use the `--with-nan-emulation'
+   configure option to force the use of this implementation. We can't promise
+   that the compiled binary actually behaves as it should, but since NANs
+   are likely never passed to the libm you have a good chance to be lucky.
  
  
  Contact
diff --combined src/collectd.conf.in
index d2cbc61ff36d025128695e989a681429a69b77ac,5bb1fc776d0f0ef76bbd25294fa3ef1fa408a10d..0bd19abb02c66bc2db298536cdae5c179146e79f
@@@ -28,7 -28,6 +28,7 @@@
  @BUILD_PLUGIN_HDDTEMP_TRUE@LoadPlugin hddtemp
  @BUILD_PLUGIN_INTERFACE_TRUE@LoadPlugin interface
  @BUILD_PLUGIN_IPTABLES_TRUE@LoadPlugin iptables
 +@BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs
  @BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq
  @BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load
  @BUILD_PLUGIN_LOGFILE_TRUE@LoadPlugin logfile
@@@ -51,7 -50,6 +51,7 @@@
  @BUILD_PLUGIN_SWAP_TRUE@LoadPlugin swap
  @BUILD_PLUGIN_SYSLOG_TRUE@LoadPlugin syslog
  @BUILD_PLUGIN_TAPE_TRUE@LoadPlugin tape
 +@BUILD_PLUGIN_TCPCONNS_TRUE@Plugin tcpconns
  @BUILD_PLUGIN_UNIXSOCK_TRUE@LoadPlugin unixsock
  @BUILD_PLUGIN_USERS_TRUE@LoadPlugin users
  @BUILD_PLUGIN_VSERVER_TRUE@LoadPlugin vserver
  
  #<Plugin rrdtool>
  #     DataDir "@prefix@/var/lib/@PACKAGE_NAME@/rrd"
- #     StepSize      10
- #     HeartBeat     20
- #     RRARows     1200
- #     XFF            0.1
  #     CacheTimeout 120
  #     CacheFlush   900
  #</Plugin>
  #     LogLevel info
  #</Plugin>
  
 +#<Plugin tcpconns>
 +#     ListeningPorts false
 +#     LocalPort "25"
 +#     RemotePort "25"
 +#</Plugin>
 +
  #<Plugin unixsock>
  #     SocketFile "@prefix@/var/run/@PACKAGE_NAME@-unixsock"
  #     SocketGroup "collectd"
diff --combined src/collectd.conf.pod
index b6503bb23642dde3287a83a2eac8fdb943b6ed6a,db87f9c5614582f69bc68fc1bf016c79c694b3bb..9dcff2592c4925daf98ef550e6e573db3553fc14
@@@ -47,15 -47,6 +47,15 @@@ directory for the daemon
  Loads the plugin I<Plugin>. There must be at least one such line or B<collectd>
  will be mostly useless.
  
 +=item B<Include> I<File>
 +
 +Includes the file I<File> as if it was copy and pasted here. To prevent loops
 +and shooting yourself in the foot in interesting ways the nesting is limited to
 +a depth of 8E<nbsp>levels, which should be sufficient for most uses.
 +
 +It is no problem to have a block like C<E<lt>Plugin fooE<gt>> in more than one
 +file, but you cannot include files from within blocks.
 +
  =item B<PIDFile> I<File>
  
  Sets where to write the PID file to. This file is overwritten when it exists
@@@ -172,7 -163,7 +172,7 @@@ installed and an "cpu governor" (that'
  
  =item B<DataDir> I<Directory>
  
- Set the directory to store RRD-files under. Per default RRD-files are generated
+ Set the directory to store CSV-files under. Per default CSV-files are generated
  beneath the daemon's working directory, i.E<nbsp>e. the B<BaseDir>.
  
  =back
@@@ -403,7 -394,7 +403,7 @@@ TCP-Port to connect to. Defaults to B<4
  The C<mysql plugin> 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
- plugin logs loud complaints in case anything goes wrong.
+ plugin will complaint loudly 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<mysql_octets.rrd>,
@@@ -771,44 -762,6 +771,44 @@@ syslog-daemon
  
  =back
  
 +=head2 Plugin C<tcpconns>
 +
 +The C<tcpconns plugin> counts the number of currently established TCP
 +connections based on the local port and/or the remote port. Since there may be
 +a lot of connections the default if to count all connections with a local port,
 +for which a listening socket is opened. You can use the following options to
 +fine-tune the ports you are interested in:
 +
 +=over 4
 +
 +=item B<ListeningPorts> I<true>|I<false>
 +
 +If this option is set to I<true>, statistics for all local ports for which a
 +listening socket exists are collected. The default depends on B<LocalPort> and
 +B<RemotePort> (see below): If no port at all is specifically selected, the
 +default is to collect listening ports. If specific ports (no matter if local or
 +remote ports) are selected, this option defaults to I<false>, i.E<nbsp>e. only
 +the selected ports will be collected unless this option is set to I<true>
 +specifically.
 +
 +=item B<LocalPort> I<Port>
 +
 +Count the connections to a specific local port. This can be used to see how
 +many connections are handeled by a specific daemon, e.E<nbsp>g. the mailserver.
 +You have to specify the port in numeric form, so for the mailserver example
 +you'd need to set B<25>.
 +
 +=item B<RemotePort> I<Port>
 +
 +Count the connections to a specific remote port. This is usefull to see how
 +much a remote service is used. This is most useful if you want to know how many
 +connections a local service has opened to remote services, e.E<nbsp>g. how many
 +connections a mail server or news server has to other mail or news servers, or
 +how many connections a web proxy holds to web servers. You have to give the
 +port in numeric form.
 +
 +=back
 +
  =head2 Plugin C<unixsock>
  
  =over 4