]> granicus.if.org Git - apache/commitdiff
Backport documentation updates for mod_heartbeat, mod_heartmonitor and mod_watchdog
authorSander Temme <sctemme@apache.org>
Mon, 9 Jan 2012 16:34:24 +0000 (16:34 +0000)
committerSander Temme <sctemme@apache.org>
Mon, 9 Jan 2012 16:34:24 +0000 (16:34 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1229241 13f79535-47bb-0310-9956-ffa450edef68

docs/STATUS
docs/manual/mod/mod_heartbeat.xml
docs/manual/mod/mod_heartmonitor.xml
docs/manual/mod/mod_watchdog.xml [new file with mode: 0644]
docs/manual/mod/mod_watchdog.xml.meta [new file with mode: 0644]

index 748d6cd07edc6994ca9bb595c9e25192665f9f77..9819034b3d7310c62d0ea77eccec37ebfc40c36b 100644 (file)
@@ -56,11 +56,7 @@ To Do List
   Start is in expr.xml, igalic is working on this
 
 - modules docs
-    - the follwing modules added since 2.2 lack documentation
-        - mod_watchdog
-        - mod_heartbeat
-        - mod_heartmonitor
-        - mod_lbmethod_heartbeat
+    - the following modules added since 2.2 lack documentation
       the list may be incomplete
       maybe some of the modules will not be included in 2.4
     - mod_suexec: very little documentation
index ca824e647d8bdaa0b223c8bd03853db088df4294..f81df68cf06f586da3938cf157284ccf831d09cf 100644 (file)
@@ -35,21 +35,56 @@ that advertises the servers current connection count.  Usually, <module>mod_hear
 will be running on a proxy server with <module>mod_lbmethod_heartbeat</module> loaded, which allows
 <directive module="mod_proxy">ProxyPass</directive> to use the "heartbeat" <em>lbmethod</em> inside
 of <directive module="mod_proxy">ProxyPass</directive>.</p>
+<p>
+    <module>mod_heartbeat</module> itself is loaded on the origin server(s) that serve requests 
+    through the proxy server(s).  
+</p>
+
+    <note type="warning">
+        To use <module>mod_heartbeat</module>,
+        <module>mod_status</module> and <module>mod_watchdog</module>
+        must be either a static modules or, if a dynamic module, must
+        be loaded before <module>mod_heartbeat</module>.
+    </note>
+
 </summary>
 
+<section id="consuming">
+    <title>Consuming mod_heartbeat Output</title>
+  <p>
+      Every 1 second, this module generates a single multicast UDP
+      packet, containing the number of busy and idle workers.  The
+      packet is a simple ASCII format, similiar to GET query parameters
+      in HTTP.
+  </p>
+  
+<example><title>An Example Packet</title>
+v=1&amp;ready=75&amp;busy=0
+</example>
+
+  <p>
+    Consumers should handle new variables besides busy and ready,
+    separated by '&amp;', being added in the future.
+  </p>
+
+</section>
+
 <directivesynopsis>
 <name>HeartbeatAddress</name>
-<description>Address to send heartbeat requests</description>
+<description>Multicast address for heartbeat packets</description>
 <syntax>HeartbeatAddress <var>addr:port</var></syntax>
 <default>disabled</default>
 <contextlist><context>server config</context></contextlist>
 
 <usage>
-    <p>The <directive>HeartbeatAddress</directive> directive specifies the 
-    address <module>mod_heartbeat</module> will send status information to. This
-    address will usually corrspond to a configured  <directive
-    module="mod_heartmonitor">HeartbeatListen</directive> on a frontend
-    proxy system.  </p>
+<p>The <directive>HeartbeatAddress</directive> directive specifies the
+multicast address to which <module>mod_heartbeat</module> will send
+status information. This address will usually correspond to a configured
+ <directive module="mod_heartmonitor">HeartbeatListen</directive> on a
+frontend proxy system.</p>
+<example>
+HeartbeatAddress 239.0.0.1:27999
+</example>    
 </usage>
 </directivesynopsis>
 
index 9028040f569534d22347613a9416e8f0c476ff82..2870b1df12243ef836a8162389729ba57be87b47 100644 (file)
  limitations under the License.
 -->
 
-<modulesynopsis metafile="mod_heartbeat.xml.meta">
+<modulesynopsis metafile="mod_heartmonitor.xml.meta">
 
 <name>mod_heartmonitor</name>
 <description>centralized monitor for mod_heartbeat origin servers</description>
 <status>Experimental</status>
-<sourcefile>mod_heartmonitor</sourcefile>
+<sourcefile>mod_heartmonitor.c</sourcefile>
 <identifier>heartmonitor_module</identifier>
 <compatibility>Available in Apache 2.3 and later</compatibility>
 
 <summary>
 <p>
 <module>mod_heartmonitor</module> listens for server status messages generated 
-by <module>mod_heartbeat</module> enabled servers and makes their status 
+by <module>mod_heartbeat</module> enabled origin servers and makes their status 
 available to <module>mod_lbmethod_heartbeat</module>. This allows 
 <directive module="mod_proxy">ProxyPass</directive> to use the "heartbeat" 
 <em>lbmethod</em> inside of <directive module="mod_proxy">ProxyPass</directive>.
@@ -41,22 +41,34 @@ available to <module>mod_lbmethod_heartbeat</module>. This allows
 <p>This module uses the services of <module>mod_slotmem_shm</module> when
 available instead of flat-file storage.  No configuration is required to
 use <module>mod_slotmem_shm</module>.</p>
+
+    <note type="warning">
+        To use <module>mod_heartmonitor</module>,
+        <module>mod_status</module> and <module>mod_watchdog</module>
+        must be either a static modules or, if a dynamic module, it must
+        be loaded before <module>mod_heartmonitor</module>.
+    </note>
+
 </summary>
 
 <directivesynopsis>
 <name>HeartbeatListen</name>
-<description>address to listen for incoming heartbeat requests </description>
+<description>multicast address to listen for incoming heartbeat requests </description>
 <syntax>HeartbeatListen<var>addr:port</var></syntax>
 <default>disabled</default>
 <contextlist><context>server config</context></contextlist>
 
 <usage>
     <p>The <directive>HeartbeatListen</directive> directive specifies the
-    address the server will listen on for status information from 
+    multicast address on which the server will listen for status information from 
     <module>mod_heartbeat</module>-enabled servers.  This
-    address will usually corrspond to a configured  <directive
+    address will usually correspond to a configured  <directive
     module="mod_heartbeat">HeartbeatAddress</directive> on an origin server.
     </p>
+    
+    <example>
+    HeartbeatListen 239.0.0.1:27999
+    </example>
 
     <p> This module is inactive until this directive is used.</p>
 </usage>
@@ -88,7 +100,7 @@ heartbeat requests to this server</description>
     <p>The <directive>HeartbeatMaxServers</directive> directive specifies the
     maximum number of servers that will be sending requests to this monitor
     server.  It is used to control the size of the shared memory allocated
-    to store the heartbeat info.</p>
+    to store the heartbeat info when <module>mod_slotmem_shm</module> is in use.</p>
 </usage>
 </directivesynopsis>
 </modulesynopsis>
diff --git a/docs/manual/mod/mod_watchdog.xml b/docs/manual/mod/mod_watchdog.xml
new file mode 100644 (file)
index 0000000..14dcd5c
--- /dev/null
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_watchdog.xml.meta">
+<name>mod_watchdog</name>
+<description>provides infrastructure for other modules to periodically run 
+    tasks</description>
+<status>Base</status>
+<sourcefile>mod_watchdog.c</sourcefile>
+<identifier>watchdog_module</identifier>
+<compatibility>Available in Apache 2.3 and later</compatibility>
+
+<summary>
+<p><module>mod_watchdog</module> defines programmatic hooks for other modules to 
+periodically run tasks.  These modules can register handlers for 
+<module>mod_watchdog</module> hooks.  Currently, the following modules in the 
+Apache distribution use this functionality:</p> 
+<ul>
+<li><module>mod_heartbeat</module></li>
+<li><module>mod_heartmonitor</module></li>
+</ul>
+<note type="warning">
+To allow a module to use <module>mod_watchdog</module> functionality, 
+<module>mod_watchdog</module> itself must be statically linked to the server 
+core or, if a dynamic module, be loaded before the calling module. 
+</note>
+</summary>
+
+<directivesynopsis>
+<name>WatchdogInterval</name>
+<description>Watchdog interval in seconds</description>
+<syntax>WatchdogInterval <var>number-of-seconds</var></syntax>
+<default>WatchdogInterval 1</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+Sets the interval at which the watchdog_step hook runs.  Default is to run every 
+second.
+</usage>
+</directivesynopsis>
+</modulesynopsis>
+
diff --git a/docs/manual/mod/mod_watchdog.xml.meta b/docs/manual/mod/mod_watchdog.xml.meta
new file mode 100644 (file)
index 0000000..c6d93ae
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- GENERATED FROM XML: DO NOT EDIT -->
+
+<metafile reference="mod_watchdog.xml">
+  <basename>mod_watchdog</basename>
+  <path>/mod/</path>
+  <relpath>..</relpath>
+
+  <variants>
+    <variant>en</variant>
+  </variants>
+</metafile>