mirror of
https://github.com/apache/httpd.git
synced 2025-04-18 22:24:07 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1879077 13f79535-47bb-0310-9956-ffa450edef68
135 lines
4.8 KiB
XML
135 lines
4.8 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
|
|
<!-- $LastChangedRevision$ -->
|
|
|
|
<!--
|
|
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_log_debug.xml.meta">
|
|
|
|
<name>mod_log_debug</name>
|
|
<description>Additional configurable debug logging</description>
|
|
<status>Experimental</status>
|
|
<sourcefile>mod_log_debug.c</sourcefile>
|
|
<identifier>log_debug_module</identifier>
|
|
<compatibility>Available in Apache 2.3.14 and later</compatibility>
|
|
|
|
<section id="examples"><title>Examples</title>
|
|
|
|
<ol>
|
|
<li>
|
|
Log message after request to /foo/* is processed:
|
|
|
|
<highlight language="config">
|
|
<Location "/foo/">
|
|
LogMessage "/foo/ has been requested"
|
|
</Location>
|
|
</highlight>
|
|
</li>
|
|
|
|
<li>
|
|
Log message if request to /foo/* is processed in a sub-request:
|
|
<highlight language="config">
|
|
<Location "/foo/">
|
|
LogMessage "subrequest to /foo/" hook=type_checker "expr=-T %{IS_SUBREQ}"
|
|
</Location>
|
|
</highlight>
|
|
|
|
The default log_transaction hook is not executed for sub-requests,
|
|
therefore we have to use a different hook.
|
|
</li>
|
|
|
|
|
|
<li>
|
|
Log message if an IPv6 client causes a request timeout:
|
|
<highlight language="config">
|
|
LogMessage "IPv6 timeout from %{REMOTE_ADDR}" "expr=-T %{IPV6} && %{REQUEST_STATUS} = 408"
|
|
</highlight>
|
|
Note the placing of the double quotes for the <code>expr=</code> argument.
|
|
</li>
|
|
|
|
<li>
|
|
Log the value of the "X-Foo" request environment variable in each
|
|
stage of the request:
|
|
<highlight language="config">
|
|
<Location "/">
|
|
LogMessage "%{reqenv:X-Foo}" hook=all
|
|
</Location>
|
|
</highlight>
|
|
Together with microsecond time stamps in the error log,
|
|
<code>hook=all</code> also lets you determine the times spent
|
|
in the different parts of the request processing.
|
|
</li>
|
|
|
|
</ol>
|
|
</section>
|
|
|
|
<directivesynopsis>
|
|
<name>LogMessage</name>
|
|
<description>Log user-defined message to error log
|
|
</description>
|
|
<syntax>LogMessage <var>message</var>
|
|
[hook=<var>hook</var>] [expr=<var>expression</var>]
|
|
</syntax>
|
|
<default>Unset</default>
|
|
<contextlist><context>directory</context>
|
|
</contextlist>
|
|
|
|
<usage>
|
|
<p>This directive causes a user defined message to be logged to the
|
|
error log. The message can use variables and functions from the
|
|
<a href="../expr.html">ap_expr syntax</a>. References to HTTP headers
|
|
will not cause header names to be added to the Vary header. The
|
|
messages are logged at loglevel info.</p>
|
|
|
|
<p>The hook specifies before which phase of request processing the message
|
|
will be logged. The following hooks are supported:</p>
|
|
|
|
<table border="1" style="zebra">
|
|
<columnspec><column width="1"/></columnspec>
|
|
<tr><th>Name</th></tr>
|
|
<tr><td><code>pre_translate_name</code></td></tr>
|
|
<tr><td><code>translate_name</code></td></tr>
|
|
<tr><td><code>type_checker</code></td></tr>
|
|
<tr><td><code>quick_handler</code></td></tr>
|
|
<tr><td><code>map_to_storage</code></td></tr>
|
|
<tr><td><code>check_access</code></td></tr>
|
|
<tr><td><code>check_access_ex</code></td></tr>
|
|
<tr><td><code>insert_filter</code></td></tr>
|
|
<tr><td><code>check_authn</code></td></tr>
|
|
<tr><td><code>check_authz</code></td></tr>
|
|
<tr><td><code>fixups</code></td></tr>
|
|
<tr><td><code>handler</code></td></tr>
|
|
<tr><td><code>log_transaction</code></td></tr>
|
|
</table>
|
|
|
|
<p>The default is <code>log_transaction</code>. The special value
|
|
<code>all</code> is also supported, causing a message to be logged at each
|
|
phase. Not all hooks are executed for every request.</p>
|
|
|
|
<p>The optional expression allows to restrict the message if a
|
|
condition is met. The details of the expression syntax are described in
|
|
the <a href="../expr.html">ap_expr documentation</a>. References to HTTP
|
|
headers will not cause the header names to be added to the Vary header.</p>
|
|
|
|
</usage>
|
|
|
|
</directivesynopsis>
|
|
|
|
</modulesynopsis>
|