.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "COMMON2DLF.IN 1" .TH COMMON2DLF.IN 1 2025-09-28 "Lire 2.1.1" "LogReport's Lire Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME common2dlf \- convert Common Log Format web server log files to www DLF .SH SYNOPSIS .IX Header "SYNOPSIS" \&\fBcommon2dlf\fR \fIfile\fR .SH DESCRIPTION .IX Header "DESCRIPTION" \&\fBcommon2dlf\fR converts Common Log Format web server log files to the www DLF. Common Log Format is a standard log format that was originally implemented in the CERN httpd web server but that now supported nowadays by most web servers. Apache, IIS, Boa and PureFTPD can be configured to log in that format. .PP If the \fIfile\fR argument is missing, STDIN will get parsed. DLF will be printed on STDOUT. .SH "COMMON LOG FORMAT" .IX Header "COMMON LOG FORMAT" The Common Log Format has the following format: .PP \&\fIremotehost\fR \fIrfc931\fR \fIauthuser\fR [\fIdate\fR] "\fIrequest\fR" \fIstatus\fR \fIbytes\fR .PP where the fields have the following meaning: .IP \fIremotehost\fR 4 .IX Item "remotehost" The host that made the request. Can be an IP or a hostname. .IP \fIrfc931\fR 4 .IX Item "rfc931" The result of an ident lookup on the host. This is usually never used. .IP \fIauthuser\fR 4 .IX Item "authuser" The authenticated username. .IP \fIdate\fR 4 .IX Item "date" The timestamp of the request. .IP \fIrequest\fR 4 .IX Item "request" The first line of the request. Usually in the format "\fImethod\fR \fIrequest\-uri\fR \fIhttp\-version\fR". .Sp See also RFC 2616, section 5.1. .IP \fIstatus\fR 4 .IX Item "status" The result status of the request. i.e. 200, 301, 404, 500. .IP \fIbytes\fR 4 .IX Item "bytes" The size of the request sent to the client. .PP Log example: .PP .Vb 2 \& 127.0.01 \- \- [11/03/2001 12:12:01 \-0400] "GET / HTTP/1.0" 200 513 \& dsl1.myprovider.com \- francis [11/03/2001 12:14:01 \-0400] "GET /secret/ HTTP/1.0" 200 1256 .Ve .SH EXAMPLES .IX Header "EXAMPLES" To process a log as produced in the common logformat: .PP .Vb 1 \& $ lr_run common2dlf < common.log .Ve .PP common2dlf will be rarely used on its own, but is more likely called by lr_log2report: .PP .Vb 1 \& $ lr_log2report common < /var/log/httpd/common.log .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBcombined\fR\|(2), \fBmodgzip2dlf\fR\|(1), \fBreferer2dlf\fR\|(1) .SH AUTHORS .IX Header "AUTHORS" Joost van Baal , Francis J. Lacoste and Egon Willighagen , based on an idea by Edwin Groothuis .SH VERSION .IX Header "VERSION" \&\f(CW$Id:\fR common2dlf.in,v 1.15 2006/07/23 13:16:36 vanbaal Exp $ .SH COPYRIGHT .IX Header "COPYRIGHT" Copyright (C) 2000, 2001 Stichting LogReport Foundation LogReport@LogReport.org .PP This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. .PP This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .PP You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.