From: André Malo Date: Sat, 21 Feb 2004 17:40:48 +0000 (+0000) Subject: add initial documentation for mod_log_forensic. please review. X-Git-Tag: pre_ajp_proxy~639 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=270e26d366219f0ba3f484f323885e18bab76a3d;p=apache add initial documentation for mod_log_forensic. please review. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102731 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/mod/mod_log_forensic.xml b/docs/manual/mod/mod_log_forensic.xml new file mode 100644 index 0000000000..315d6f0a15 --- /dev/null +++ b/docs/manual/mod/mod_log_forensic.xml @@ -0,0 +1,143 @@ + + + + + + + + +mod_log_forensic +Forensic Logging of the requests made to the server +Extension +mod_log_forensic.c +log_forensic_module + + +

This module provides for forensic logging of client + requests. Logging is done before and after processing a request, so the + forensic log contains two log lines for each request. + The forensic logger works very strict, which means:

+ +
    +
  • The format is fixed. You cannot modify the logging format at + runtime.
  • +
  • If it cannot write its data, the particular child process + exits immediately and possibly dumps core (depends on your + CoreDumpDirectory + configuration).
  • +
+ +

In order to evaluate the log output there's a script + check_forensic, which can be found in the support directory + of the distribution.

+
+Apache Log Files +mod_log_config + +
Forensic Log Format +

Each request is logged two times. The first time before it's + processed further (that is, after receiving the headers). The second log + entry is written after the request processing at the same time + where normal logging occurs.

+ +

In order to identify each request, a unique request ID is assigned. + This forensic id can be cross logged in the normal transfer log using the + %{forensic-id}n format string. If you're using + mod_unique_id its generated ID will be used.

+ +

The first line logs the forensic ID, the request line and all received + headers, separated by pipe characters (|). A sample line + looks like the following (all on one line):

+ + + +yQtJf8CoAB4AAFNXBIEAAAAA|GET /manual/de/images/down.gif + HTTP/1.1|Host:localhost%3a8080|User-Agent:Mozilla/5.0 (X11; + U; Linux i686; en-US; rv%3a1.6) Gecko/20040216 + Firefox/0.8|Accept:image/png, etc... + + +

The plus character at the beginning indicates that this is first log + line of this request. The second line just contains a minus character and + the id again:

+ + + -yQtJf8CoAB4AAFNXBIEAAAAA + + +

The check_forensic script gets as its argument the name + of the logfile. It looks for those +/- ID pairs + and complains if a request was not completed.

+
+ +
Security Considerations +

See the security tips + document for details on why your security could be compromised + if the directory where logfiles are stored is writable by + anyone other than the user that starts the server.

+
+ + +ForensicLog +Sets filename of the forensic log +ForensicLog filename|pipe +server configvirtual host + +Available in version 2.1 and later + + +

The ForensicLog directive is used to + log requests to the server for a forensic analysis. Each log entry + gets assigned unique id which can be associated with the request + using the normal CustomLog + directive. mod_log_forensic leaves a note called + forensic-id which can be added to the transfer log by + using the %{forensic-id}n format string.

+ +

The argument, which specifies the location to which + the logs will be written, can take one of the following two + types of values:

+ +
+
filename
+
A filename, relative to the ServerRoot.
+ +
pipe
+
The pipe character "|", followed by the path + to a program to receive the log information on its standard + input. The program name can be specified relative to the ServerRoot directive. + + Security: +

If a program is used, then it will be run as the user who + started httpd. This will be root if the server was started by root; + be sure that the program is secure or switches to a less privileged + user.

+
+ + Note +

When entering a file path on non-Unix platforms, care should be taken + to make sure that only forward slashed are used even though the platform + may allow the use of back slashes. In general it is a good idea to always + use forward slashes throughout the configuration files.

+
+
+
+
+ +
diff --git a/docs/manual/mod/mod_log_forensic.xml.meta b/docs/manual/mod/mod_log_forensic.xml.meta new file mode 100644 index 0000000000..abb454728f --- /dev/null +++ b/docs/manual/mod/mod_log_forensic.xml.meta @@ -0,0 +1,11 @@ + + + + mod_log_forensic + /mod/ + .. + + + en + +