/[monit]/monit/web/doc/manual.php
ViewVC logotype

Diff of /monit/web/doc/manual.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.4 by martinp, Tue Mar 29 19:53:51 2005 UTC revision 1.5 by martinp, Tue Mar 29 21:06:45 2005 UTC
# Line 43  Line 43 
43                  <li><a href="#setting_a_mail_server_for_alert_messages">Setting a mail server for alert messages</a></li>                  <li><a href="#setting_a_mail_server_for_alert_messages">Setting a mail server for alert messages</a></li>
44          </ul>          </ul>
45    
         <li><a href="#status_and_events_upstream">STATUS AND EVENTS UPSTREAM</a></li>  
46          <li><a href="#service_timeout">SERVICE TIMEOUT</a></li>          <li><a href="#service_timeout">SERVICE TIMEOUT</a></li>
47          <li><a href="#service_tests">SERVICE TESTS</a></li>          <li><a href="#service_tests">SERVICE TESTS</a></li>
48          <ul>          <ul>
# Line 57  Line 56 
56                  <li><a href="#permission_testing">PERMISSION TESTING</a></li>                  <li><a href="#permission_testing">PERMISSION TESTING</a></li>
57                  <li><a href="#uid_testing">UID TESTING</a></li>                  <li><a href="#uid_testing">UID TESTING</a></li>
58                  <li><a href="#gid_testing">GID TESTING</a></li>                  <li><a href="#gid_testing">GID TESTING</a></li>
59                    <li><a href="#pid_testing">PID TESTING</a></li>
60                    <li><a href="#ppid_testing">PPID TESTING</a></li>
61                  <li><a href="#connection_testing">CONNECTION TESTING</a></li>                  <li><a href="#connection_testing">CONNECTION TESTING</a></li>
62                  <ul>                  <ul>
63    
64                          <ul>                          <ul>
65    
66                                    <li><a href="#connection_testing_using_the_url_notation">Connection testing using the URL notation</a></li>
67                                  <li><a href="#remote_host_ping_test">Remote host ping test</a></li>                                  <li><a href="#remote_host_ping_test">Remote host ping test</a></li>
68                                  <li><a href="#examples">Examples</a></li>                                  <li><a href="#examples">Examples</a></li>
69                          </ul>                          </ul>
# Line 78  Line 80 
80    
81                          <ul>                          <ul>
82    
83                                  <li><a href="#host_allow_list">Host allow list</a></li>                                  <li><a href="#host_and_network_allow_list">Host and network allow list</a></li>
84                                  <li><a href="#basic_authentication">Basic Authentication</a></li>                                  <li><a href="#basic_authentication">Basic Authentication</a></li>
85                          </ul>                          </ul>
86    
# Line 265  useful to be able to test a remote host Line 267  useful to be able to test a remote host
267  <h1><a name="how_to_monitor">HOW TO MONITOR</a></h1>  <h1><a name="how_to_monitor">HOW TO MONITOR</a></h1>
268  <p>monit is configured and controlled via a control file called  <p>monit is configured and controlled via a control file called
269  <strong>monitrc</strong>. The default location for this file is ~/.monitrc. If  <strong>monitrc</strong>. The default location for this file is ~/.monitrc. If
270  this file does not exist, monit will try /etc/monitrc and finally  this file does not exist, monit will try /etc/monitrc, then
271  ./monitrc.</p>  /usr/local/etc/monitrc and finally ./monitrc.</p>
272  <p>A monit control file consists of a series of service entries and  <p>A monit control file consists of a series of service entries and
273  global option statements in a free-format, token-oriented syntax.  global option statements in a free-format, token-oriented syntax.
274  Comments begin with a # and extend through the end of the line.  Comments begin with a # and extend through the end of the line.
# Line 815  for monitoring of object, which property Line 817  for monitoring of object, which property
817  watches whether the value will change again. You can use it just  watches whether the value will change again. You can use it just
818  for alert or to involve some automatic action, as for example to  for alert or to involve some automatic action, as for example to
819  reload monitored process after its configuration file was changed.  reload monitored process after its configuration file was changed.
820  Variable tests are supported for 'checksum', 'size' and 'timestamp'  Variable tests are supported for 'checksum', 'size', 'pid, 'ppid'
821  tests only, if you consider that other tests can be useful in  and 'timestamp' tests only, if you consider that other tests can
822  variable form too, please let us know.</p>  be useful in variable form too, please let us know.</p>
823  <dl>  <dl>
824  <dt><strong><a name="item_if_changed__3ctest_3e_then_action">IF CHANGED &lt;TEST&gt; THEN ACTION</a></strong><br />  <dt><strong><a name="item_if_changed__3ctest_3e_then_action">IF CHANGED &lt;TEST&gt; THEN ACTION</a></strong><br />
825  </dt>  </dt>
# Line 1280  monitoring the file and propagate an unm Line 1282  monitoring the file and propagate an unm
1282  a depend tree.</p>  a depend tree.</p>
1283  <p>  <p>
1284  </p>  </p>
1285    <h2><a name="pid_testing">PID TESTING</a></h2>
1286    <p>monit tests the process id (pid) of processes for change. This test
1287    is implicit and monit will send alert in the case of failure by
1288    default.</p>
1289    <p>You may override the default action using below rule (it may only
1290    be used within a process service entry in the monit control file).</p>
1291    <p>The syntax for the pid statement is:</p>
1292    <dl>
1293    <dt><strong><a name="item_if_changed_pid_then_action">IF CHANGED PID THEN action</a></strong><br />
1294    </dt>
1295    </dl>
1296    <p><em>action</em> is a choice of ``ALERT'', ``RESTART'', ``START'', ``STOP'',
1297    ``EXEC'' or ``UNMONITOR''.</p>
1298    <p>This test is useful to detect possible process restarts which
1299    has occured in the timeframe between two monit testing cycles.
1300    In the case that the restart was fast and the process provides
1301    expected service (i.e. all tests passed) you will be notified
1302    that the process was replaced.</p>
1303    <p>For example sshd daemon can restart very quickly, thus if someone
1304    changes its configuration and do sshd restart outside of monit
1305    control, you will be notified that the process was replaced by
1306    new instance (or you can optionaly do some other action such as
1307    preventively stop sshd).</p>
1308    <p>Another example is MySQL Cluster which has its own watchdog with
1309    process restart ability. You can use monit for redundant monitoring.
1310    Monit will just send alert in the case that the MySQL cluster
1311    restarted the node quickly.</p>
1312    <p>Example:</p>
1313    <pre>
1314     check process sshd with pidfile /var/run/sshd.pid
1315           if changed pid then exec &quot;/my/script&quot;
1316           alert root@localhost</pre>
1317    <p>
1318    </p>
1319    <h2><a name="ppid_testing">PPID TESTING</a></h2>
1320    <p>monit tests the process parent id (ppid) of processes for change.
1321    This test is implicit and monit will send alert in the case of
1322    failure by default.</p>
1323    <p>You may override the default action using below rule (it may only
1324    be used within a process service entry in the monit control file).</p>
1325    <p>The syntax for the ppid statement is:</p>
1326    <dl>
1327    <dt><strong><a name="item_if_changed_ppid_then_action">IF CHANGED PPID THEN action</a></strong><br />
1328    </dt>
1329    </dl>
1330    <p><em>action</em> is a choice of ``ALERT'', ``RESTART'', ``START'', ``STOP'',
1331    ``EXEC'' or ``UNMONITOR''.</p>
1332    <p>This test is useful to detect possible process parent change.
1333    This may happen normaly only in the case that the process parent
1334    exited.</p>
1335    <p>Example:</p>
1336    <pre>
1337     check process myproc with pidfile /var/run/myproc.pid
1338           if changed ppid then exec &quot;/my/script&quot;
1339           alert root@localhost</pre>
1340    <p>
1341    </p>
1342  <h2><a name="connection_testing">CONNECTION TESTING</a></h2>  <h2><a name="connection_testing">CONNECTION TESTING</a></h2>
1343  <p>Monit is able to perform connection testing via networked ports  <p>Monit is able to perform connection testing via networked ports
1344  or via Unix sockets. A connection test may only be used within a  or via Unix sockets. A connection test may only be used within a
# Line 1340  options are:</p> Line 1399  options are:</p>
1399  <p><strong>proto(col):PROTO {protocols}</strong>. Optionally specify the protocol  <p><strong>proto(col):PROTO {protocols}</strong>. Optionally specify the protocol
1400  monit should speak when a connection is established. At the  monit should speak when a connection is established. At the
1401  moment monit knows how to speak <em>HTTP</em>, <em>SMTP</em>, <em>FTP</em>, <em>POP</em>,  moment monit knows how to speak <em>HTTP</em>, <em>SMTP</em>, <em>FTP</em>, <em>POP</em>,
1402  <em>IMAP</em>, <em>NNTP</em>, <em>SSH</em>, <em>DWP</em>, <em>LDAP2</em>, <em>LDAP3</em>, <em>RDATE</em>  <em>IMAP</em>, <em>NTP3</em>, <em>NNTP</em>, <em>SSH</em>, <em>DWP</em>, <em>LDAP2</em>, <em>LDAP3</em>,
1403  and <em>RSYNC</em> and if you have compiled monit with ssl support,  <em>RDATE</em> and <em>RSYNC</em> and if you have compiled monit with ssl
1404  monit can also speak <em>HTTPS</em>, <em>FTPS</em>, <em>POPS</em> and <em>IMAPS</em>. If  support, monit can also speak <em>HTTPS</em>, <em>FTPS</em>, <em>POPS</em> and
1405  the server's protocol is not found in this list, simply do not  <em>IMAPS</em>. If the server's protocol is not found in this list,
1406  specify the protocol and monit will utilize a default test,  simply do not specify the protocol and monit will utilize a
1407  including testing if it is possible to read and write to the  default test, including testing if it is possible to read and
1408  port. This default test is in most cases more than good enough to  write to the port. This default test is in most cases more than
1409  deduce if the server behind the port is up or not. The protocol  good enough to deduce if the server behind the port is up or not.
1410  statement is:</p>  The protocol statement is:</p>
1411  <pre>  <pre>
1412   [PROTO(COL) {name} [REQUEST {&quot;/path&quot;} [with CHECKSUM checksum]]</pre>   [PROTO(COL) {name} [REQUEST {&quot;/path&quot;} [with CHECKSUM checksum]]</pre>
1413  <p>As you can see, you may specify a request after the protocol, at  <p>As you can see, you may specify a request after the protocol, at
1414  the moment only the HTTP protocol supports the request option.  the moment only the HTTP protocol supports the request option.
1415  See also below for an example.</p>  See also below for an example.</p>
1416    <p>In addition to the standard protocols, the <em>APACHE-STATUS</em>
1417    protocol is a test of a specific server type, rather than a
1418    generic protocol. Server performance is examined using the status
1419    page generated by Apache's mod_status, which is expected to be at
1420    its default address of <a href="http://www.example.com/server-status.">http://www.example.com/server-status.</a>
1421    Currently the <em>APACHE-STATUS</em> protocol examines the percentage
1422    of Apache child processes which are</p>
1423    <pre>
1424     o logging (loglimit)
1425     o closing connections (closelimit)
1426     o performing DNS lookups (dnslimit)
1427     o in keepalive with a client (keepalivelimit)
1428     o replying to a client (replylimit)
1429     o receiving a request (requestlimit)
1430     o initialising (startlimit)
1431     o waiting for incoming connections (waitlimit)
1432     o gracefully closing down (gracefullimit)
1433     o performing cleanup procedures (cleanuplimit)</pre>
1434    <p>Each of these quantities can be compared against a value relative
1435    to the total number of active Apache child processes. If the
1436    comparison expression is true the choosen action is performed.</p>
1437    <p>The apache-status protocol statement is formally defined as
1438    (keywords in uppercase):</p>
1439    <pre>
1440     PROTO(COL) {limit} OP PERCENT [OR {limit} OP PERCENT]*</pre>
1441    <p>where {limit} is one or more of: loglimit, closelimit, dnslimit,
1442    keepalivelimit, replylimit, requestlimit, startlimit, waitlimit
1443    gracefullimit or cleanuplimit. The operator OP is one of:
1444    [&lt;|=|&gt;].</p>
1445    <p>You can combine all of these test into one expression or you can
1446    choose to test a certain limit. If you combine the limits you
1447    must or' them together using the OR keyword.</p>
1448    <p>Here's an example were we test for a loglimit more than 10
1449    percent, a dnslimit over 25 percent and a wait limit less than 20
1450    percent of processes. See also more examples below in the example
1451    section.</p>
1452    <pre>
1453     protocol apache-status
1454                    loglimit &gt; 10% or
1455                    dnslimit &gt; 50% or
1456                    waitlimit &lt; 20%
1457     then alert</pre>
1458    <p>Obviously, do not use this test unless the httpd server you are
1459    testing is Apache Httpd and mod_status is activated on the
1460    server.</p>
1461  <p><strong>send/expect: {SEND|EXPECT} ``string'' ...</strong>.  If monit does not  <p><strong>send/expect: {SEND|EXPECT} ``string'' ...</strong>.  If monit does not
1462  support the protocol spoken by the server, you can write your own  support the protocol spoken by the server, you can write your own
1463  protocol-test using <em>send</em> and <em>expect</em> strings. The <em>SEND</em>  protocol-test using <em>send</em> and <em>expect</em> strings. The <em>SEND</em>
# Line 1387  connect timeout is 5 seconds.</p> Line 1491  connect timeout is 5 seconds.</p>
1491  ``EXEC'' or ``UNMONITOR''.</p>  ``EXEC'' or ``UNMONITOR''.</p>
1492  <p>  <p>
1493  </p>  </p>
1494    <h4><a name="connection_testing_using_the_url_notation">Connection testing using the URL notation</a></h4>
1495    <p>You can test a HTTP server using the compact URL syntax. This
1496    test also allow you to use POSIX regular expressions to test the
1497    content returned by the HTTP server.</p>
1498    <p>The full syntax for the URL statement is as follows (keywords are
1499    in capital and optional statements in [brackets]):</p>
1500    <pre>
1501      IF FAILED URL ULR-spec
1502         [CONTENT {==|!=} &quot;regular-expression&quot;]
1503         [TIMEOUT number SECONDS]
1504         THEN action
1505         [ELSE IF RECOVERED THEN action]</pre>
1506    <p>Where URL-spec is an URL on the standard form as specified in RFC
1507    2396:</p>
1508    <pre>
1509     &lt;protocol&gt;://&lt;authority&gt;&lt;path&gt;?&lt;query&gt;</pre>
1510    <p>Here is an example on an URL where all components are used:</p>
1511    <pre>
1512     <a href="http://user:password@www.foo.bar:8080/document/?querystring#ref">http://user:password@www.foo.bar:8080/document/?querystring#ref</a></pre>
1513    <p>If a username and password is included in the URL monit will
1514    attempt to login at the server using <strong>Basic Authentication</strong>.</p>
1515    <p>Testing the content returned by the server is optional. If used,
1516    you can test if the content <strong>match</strong> or does <strong>not match</strong> a
1517    regular expression. Here's an example on how the URL statement
1518    can be used in a <em>check service</em>:</p>
1519    <pre>
1520     check host FOO with address www.foo.bar
1521          if failed url
1522             <a href="http://user:password@www.foo.bar:8080/?querystring">http://user:password@www.foo.bar:8080/?querystring</a>
1523             and content == 'action=&quot;j_security_check&quot;'
1524          then ...</pre>
1525    <p>Monit will look at the content-length header returned by the
1526    server and download this amount before testing the content. That
1527    is, if the content-length is more than 1Mb or this header is not
1528    set by the server monit will default to download up to 1 Mb and
1529    not more.</p>
1530    <p>Only the <code>http(s)</code> protocol is supported in an URL statement. If
1531    the protocol is <strong>https</strong> monit will use SSL when connecting to
1532    the server.</p>
1533    <p>
1534    </p>
1535  <h4><a name="remote_host_ping_test">Remote host ping test</a></h4>  <h4><a name="remote_host_ping_test">Remote host ping test</a></h4>
1536  <p>In addition monit can perform ICMP Echo tests in remote host  <p>In addition monit can perform ICMP Echo tests in remote host
1537  checks. The icmp test may only be used in a check host entry and  checks. The icmp test may only be used in a check host entry and
# Line 1685  validation). Both schema's can be used t Line 1830  validation). Both schema's can be used t
1830  <strong>must</strong> choose at least one.</p>  <strong>must</strong> choose at least one.</p>
1831  <p>  <p>
1832  </p>  </p>
1833  <h4><a name="host_allow_list">Host allow list</a></h4>  <h4><a name="host_and_network_allow_list">Host and network allow list</a></h4>
1834  <p>The http server maintains an access-control list of hosts allowed  <p>The http server maintains an access-control list of hosts and
1835  to connect to the server. You can add as many hosts as you want  networks allowed to connect to the server. You can add as many
1836  to, but only hosts with a valid domain name or its IP address are  hosts as you want to, but only hosts with a valid domain name
1837  allowed. If you specify a hostname that does not resolve, monit  or its IP address are allowed. If you specify a hostname that
1838  will write an error message in the console and not start.</p>  does not resolve, monit will write an error message in the console
1839    and not start.  Networks require a network IP and a netmask to be
1840    accepted.</p>
1841  <p>The http server will query a name server to check any hosts  <p>The http server will query a name server to check any hosts
1842  connecting to the server. If a host (client) is trying to connect  connecting to the server. If a host (client) is trying to connect
1843  to the server, but cannot be found in the access list or cannot  to the server, but cannot be found in the access list or cannot
# Line 1701  client promptly.</p> Line 1848  client promptly.</p>
1848    set httpd port 2812    set httpd port 2812
1849        allow localhost        allow localhost
1850        allow my.other.work.machine.com        allow my.other.work.machine.com
1851        allow 10.1.1.1</pre>        allow 10.1.1.1
1852          allow 192.168.1.0/255.255.255.0
1853          allow 10.0.0.0/8</pre>
1854  <p>Clients, not mentioned in the allow list that tries to connect to  <p>Clients, not mentioned in the allow list that tries to connect to
1855  the server are logged with their ip-address.</p>  the server are logged with their ip-address.</p>
1856  <p>  <p>
# Line 2073  insensitive.</p> Line 2222  insensitive.</p>
2222   stop            The program used to stop the specified   stop            The program used to stop the specified
2223                   service. Full path is required. This                   service. Full path is required. This
2224                   statement is optional, but recommended.                   statement is optional, but recommended.
2225     pid and ppid    These keywords may be used as standalone
2226                     statements in a process service entry to
2227                     override the alert action for change of
2228                     process pid and ppid.
2229   uid and gid     These keywords are either 1) an optional part of   uid and gid     These keywords are either 1) an optional part of
2230                   a start, stop or exec statement. They may be                   a start, stop or exec statement. They may be
2231                   used to specify a user id and a group id the                   used to specify a user id and a group id the
# Line 2106  insensitive.</p> Line 2259  insensitive.</p>
2259   proto(col)      This keyword specifies the type of service   proto(col)      This keyword specifies the type of service
2260                   found at the port. monit knows at the moment                   found at the port. monit knows at the moment
2261                   how to speak HTTP, SMTP, FTP, POP, IMAP, NNTP,                   how to speak HTTP, SMTP, FTP, POP, IMAP, NNTP,
2262                   SSH, DWP, LDAP2, LDAP3, RDATE and RSYNC. You're                   SSH, DWP, LDAP2, LDAP3, RDATE, NTP3 and RSYNC.
2263                   welcome to write new protocol test modules. If                   You're welcome to write new protocol test modules.
2264                   no protocol is specified monit will use a def-                   If no protocol is specified monit will use a def-
2265                   ault test which in most cases are good enough.                   ault test which in most cases are good enough.
2266   request         Specifies a server request and must come   request         Specifies a server request and must come
2267                   after the protocol keyword mentioned above.                   after the protocol keyword mentioned above.
# Line 2124  insensitive.</p> Line 2277  insensitive.</p>
2277   unix(socket)    Specifies a Unix socket file and used like   unix(socket)    Specifies a Unix socket file and used like
2278                   the port statement above to test a Unix                   the port statement above to test a Unix
2279                   domain network socket connection.                   domain network socket connection.
2280     URL             Specify an URL string which monit will use for
2281                     connection testing.
2282     content         Optional sub-statement for the URL statement.
2283                     Specifies that monit should test the content
2284                     returned by the server against a regular
2285                     expression.
2286   timeout x sec.  Define a network port connection timeout. Must   timeout x sec.  Define a network port connection timeout. Must
2287                   be followed by a number in seconds and the                   be followed by a number in seconds and the
2288                   keyword, seconds.                   keyword, seconds.
# Line 2222  insensitive.</p> Line 2381  insensitive.</p>
2381  <em>mail-format</em>, <em>restart</em>, <em>timeout</em>, <em>checksum</em>, <em>resource</em>,  <em>mail-format</em>, <em>restart</em>, <em>timeout</em>, <em>checksum</em>, <em>resource</em>,
2382  <em>expect</em>, <em>send</em>, <em>mailserver</em>, <em>every</em>, <em>mode</em>, <em>active</em>,  <em>expect</em>, <em>send</em>, <em>mailserver</em>, <em>every</em>, <em>mode</em>, <em>active</em>,
2383  <em>passive</em>, <em>manual</em>, <em>depends</em>, <em>host</em>, <em>default</em>, <em>http</em>,  <em>passive</em>, <em>manual</em>, <em>depends</em>, <em>host</em>, <em>default</em>, <em>http</em>,
2384  <em>ftp</em>, <em>smtp</em>, <em>pop</em>, <em>nntp</em>, <em>imap</em>, <em>ssh</em>, <em>dwp</em>,  <em>ftp</em>, <em>smtp</em>, <em>pop</em>, <em>ntp3</em>, <em>nntp</em>, <em>imap</em>, <em>ssh</em>, <em>dwp</em>,
2385  <em>ldap2</em>, <em>ldap3</em>, <em>request</em>, <em>cpu</em>, <em>mem</em>, <em>totalmem</em>,  <em>ldap2</em>, <em>ldap3</em>, <em>request</em>, <em>cpu</em>, <em>mem</em>, <em>totalmem</em>,
2386  <em>children</em>, <em>loadavg</em>, <em>timestamp</em>, <em>changed</em>, <em>second(s)</em>,  <em>children</em>, <em>loadavg</em>, <em>timestamp</em>, <em>changed</em>, <em>second(s)</em>,
2387  <em>minute(s)</em>, <em>hour(s)</em>, <em>day(s)</em>, <em>space</em>, <em>inode</em>,  <em>minute(s)</em>, <em>hour(s)</em>, <em>day(s)</em>, <em>space</em>, <em>inode</em>, <em>pid</em>,
2388  <em>perm(ission)</em>, <em>process</em>, <em>file</em>, <em>directory</em>, <em>device</em>,  <em>ppid</em>, <em>perm(ission)</em>, <em>process</em>, <em>file</em>, <em>directory</em>,
2389  <em>size</em>, <em>unmonitor</em>, <em>rdate</em>, <em>rsync</em>, <em>data</em>, <em>invalid</em>,  <em>device</em>, <em>size</em>, <em>unmonitor</em>, <em>rdate</em>, <em>rsync</em>, <em>data</em>,
2390  <em>exec</em>, <em>nonexist</em> and <em>failed</em></p>  <em>invalid</em>, <em>exec</em>, <em>nonexist</em> and <em>failed</em></p>
2391  <p>And here is a complete list of <strong>noise keywords</strong> ignored by  <p>And here is a complete list of <strong>noise keywords</strong> ignored by
2392  monit:</p>  monit:</p>
2393  <p><em>is</em>, <em>as</em>, <em>are</em>, <em>on(ly)</em>, <em>with(in)</em>, <em>and</em>, <em>has</em>,  <p><em>is</em>, <em>as</em>, <em>are</em>, <em>on(ly)</em>, <em>with(in)</em>, <em>and</em>, <em>has</em>,
# Line 2334  the send/expect mechanism:</p> Line 2493  the send/expect mechanism:</p>
2493            send &quot;GET / HTTP/1.0\r\nHost: www.sol.no\r\n\r\n&quot;            send &quot;GET / HTTP/1.0\r\nHost: www.sol.no\r\n\r\n&quot;
2494            expect &quot;HTTP/[0-9\.]{3} 200 .*\r\n&quot;            expect &quot;HTTP/[0-9\.]{3} 200 .*\r\n&quot;
2495            then alert</pre>            then alert</pre>
2496    <p>To make sure that Apache is logging successfully (i.e. no more
2497    than 60 percent of child servers are logging), use its mod_status
2498    page at www.sol.no/server-status with this special protocol test:</p>
2499    <pre>
2500     check process apache with pidfile /var/run/httpd.pid
2501           start &quot;/etc/init.d/httpd start&quot;
2502           stop  &quot;/etc/init.d/httpd stop&quot;
2503           if failed host www.sol.no port 80
2504           protocol apache-status loglimit &gt; 60% then restart</pre>
2505    <p>This configuration can be used to alert you if 25 percent or more
2506    of Apache child processes are stuck performing DNS lookups:</p>
2507    <pre>
2508     check process apache with pidfile /var/run/httpd.pid
2509           start &quot;/etc/init.d/httpd start&quot;
2510           stop  &quot;/etc/init.d/httpd stop&quot;
2511           if failed host www.sol.no port 80
2512           protocol apache-status dnslimit &gt; 25% then alert</pre>
2513  <p>Here we use an icmp ping test to check if a remote host is up and  <p>Here we use an icmp ping test to check if a remote host is up and
2514  if not send an alert:</p>  if not send an alert:</p>
2515  <pre>  <pre>

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26