File: //usr/local/apache.backup/manual/mod/mod_log_config.html.fr
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_log_config - Serveur Apache HTTP Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_log_config</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_log_config.html" title="Fran�ais"> fr </a> |
<a href="../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_log_config.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="T�rk�e"> tr </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Journalisation des requ�tes envoy�es au
serveur</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>log_config_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_log_config.c</td></tr></table>
<h3>Sommaire</h3>
<p>Ce module apporte une grande souplesse dans la journalisation des
requ�tes des clients. Les journaux sont �crits sous un format
personnalisable, et peuvent �tre enregistr�s directement dans un
fichier, ou redirig�s vers un programme externe. La journalisation
conditionnelle est support�e, si bien que des requ�tes individuelles
peuvent �tre incluses ou exclues des journaux en fonction de leur
caract�ristiques.</p>
<p>Ce module fournit trois directives : <code class="directive"><a href="#transferlog">TransferLog</a></code> cr�e un fichier
journal, <code class="directive"><a href="#logformat">LogFormat</a></code>
d�finit un format personnalis�, et <code class="directive"><a href="#customlog">CustomLog</a></code> d�finit un fichier journal et un format en
une seule �tape. Pour journaliser les requ�tes dans plusieurs
fichiers, vous pouvez utiliser plusieurs fois les directives
<code class="directive">TransferLog</code> et
<code class="directive">CustomLog</code> dans chaque serveur.</p>
</div>
<div id="quickview"><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#formats">Formats de journaux personnalis�s</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#security">Consid�rations concernant la
s�curit�</a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#bufferedlogs">BufferedLogs</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#customlog">CustomLog</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#logformat">LogFormat</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#transferlog">TransferLog</a></li>
</ul>
<h3>Voir aussi</h3>
<ul class="seealso">
<li><a href="../logs.html">Les fichiers journaux
d'Apache</a></li>
</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="formats" id="formats">Formats de journaux personnalis�s</a></h2>
<p>L'argument format des directives <code class="directive"><a href="#logformat">LogFormat</a></code> et <code class="directive"><a href="#customlog">CustomLog</a></code> est une cha�ne de
caract�res. Cette cha�ne d�finit le format de la journalisation des
requ�tes dans le fichier journal. Elle peut contenir des caract�res
litt�raux qui seront reproduits dans le fichier journal, et les
caract�res de contr�le de style C "\n" et "\t" repr�sentant
respectivement une nouvelle ligne et une tabulation. Les guillemets
et les anti-slashes litt�raux doivent �tre �chapp�s � l'aide
d'anti-slashes.</p>
<p>Les caract�ristiques de la requ�te en elle-m�me sont journalis�es
en ins�rant des directives "<code>%</code>" dans la cha�ne de
format, celles-ci �tant remplac�es dans le fichier journal par
certaines valeurs comme suit :</p>
<table class="bordered"><tr class="header"><th>Cha�ne de format</th>
<th>Description</th></tr>
<tr><td><code>%%</code></td>
<td>Le signe "pourcentage"</td></tr>
<tr class="odd"><td><code>%a</code></td>
<td>L'adresse IP distante (voir le module
<code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>).</td></tr>
<tr><td><code>%{c}a</code></td>
<td>Adresse IP distante de la connexion(voir le module
<code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>)</td></tr>
<tr class="odd"><td><code>%A</code></td>
<td>L'adresse IP locale</td></tr>
<tr><td><code>%B</code></td>
<td>La taille de la r�ponse en octets, en excluant les en-t�tes
HTTP.</td></tr>
<tr class="odd"><td><code>%b</code></td>
<td>La taille de la r�ponse en octets, en excluant les en-t�tes
HTTP. Au format CLF , c'est � dire un '<code>-</code>' � la
place d'un 0 lorsqu'aucun octet n'est renvoy�.</td></tr>
<tr><td><code>%{<var>NOMVAR</var>}C</code></td>
<td>Le contenu du cookie <var>NOMVAR</var> dans la requ�te
envoy�e au serveur. Seuls les cookies version 0 sont pleinement
support�s.</td></tr>
<tr class="odd"><td><code>%D</code></td>
<td>Le temps mis � servir la requ�te, en
microsecondes.</td></tr>
<tr><td><code>%{<var>NOMVAR</var>}e</code></td>
<td>Le contenu de la variable d'environnement
<var>NOMVAR</var></td></tr>
<tr class="odd"><td><code>%f</code></td>
<td>Nom de fichier</td></tr>
<tr><td><code>%h</code></td>
<td>Serveur distant. Contiendra l'adresse IP si la directive
<code class="directive"><a href="../mod/core.html#hostnamelookups">HostnameLookups</a></code> est d�finie
� <code>Off</code>, ce qui est sa valeur par d�faut. Si cette
adresse IP n'est enregistr�e que pour certains serveurs, vous
avez probablement d�fini des directives de contr�le d'acc�s qui
mentionnent ces derniers par leurs noms. Voir la <a href="mod_authz_host.html#reqhost">documentation de Require
host</a>.</td></tr>
<tr class="odd"><td><code>%H</code></td>
<td>Le protocole de la requ�te</td></tr>
<tr><td><code>%{<var>NOMVAR</var>}i</code></td>
<td>Le contenu des lignes d'en-t�te
<code><var>NOMVAR</var>:</code> dans la requ�te envoy�e au
serveur. Ces en-t�tes sont ajout�s par d'autres modules (par
exemple <code class="module"><a href="../mod/mod_headers.html">mod_headers</a></code>). Si vous �tes int�ress�
par ce qu'�tait l'en-t�te de la requ�te avant d'�tre modifi�
par la plupart des modules, utilisez
<code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> pour copier l'en-t�te dans une
variable d'environnement interne et journaliser sa valeur via
le champ <code>%{<var>VARNAME</var>}e</code> d�crit plus haut.
</td></tr>
<tr class="odd"><td><code>%k</code></td>
<td>Nombre de requ�tes persistantes en cours pour cette
connexion. Interessant si la directive <code class="directive"><a href="../mod/core.html#keepalive">KeepAlive</a></code> est utilis�e ; par exemple,
'1' signifie la premi�re requ�te apr�s la requ�te initiale, '2'
la seconde, etc... ; autrement, il s'agit toujours de 0
(indiquant la requ�te initiale).</td></tr>
<tr><td><code>%l</code></td>
<td>Le nom de connexion distant (en provenance d'identd, si
disponible). Affiche un tiret, sauf si
<code class="module"><a href="../mod/mod_ident.html">mod_ident</a></code> est pr�sent et si <code class="directive"><a href="../mod/mod_ident.html#identitycheck">IdentityCheck</a></code> est �
<code>On</code>.</td></tr>
<tr class="odd"><td><code>%L</code></td>
<td>L'identifiant du message de journalisation de la requ�te
dans le journal des erreurs (ou '-' si aucun message n'a
�t� enregistr� dans le journal des erreurs pour cette requ�te)</td></tr>
<tr><td><code>%m</code></td>
<td>La m�thode de la requ�te</td></tr>
<tr class="odd"><td><code>%{<var>NOMVAR</var>}n</code></td>
<td>Le contenu de la note <var>NOMVAR</var> en provenance d'un
autre module.</td></tr>
<tr><td><code>%{<var>NOMVAR</var>}o</code></td>
<td>Le contenu de la ligne d'en-t�te
<code><var>NOMVAR</var>:</code> de la r�ponse.</td></tr>
<tr class="odd"><td><code>%p</code></td>
<td>Le port canonique du serveur servant la requ�te</td></tr>
<tr><td><code>%{<var>format</var>}p</code></td>
<td>Le port canonique du serveur servant la requ�te ou le
v�ritable port du serveur ou le v�ritable port du client. les
formats valides sont <code>canonical</code>, <code>local</code>,
ou <code>remote</code>.
</td></tr>
<tr class="odd"><td><code>%P</code></td>
<td>Le num�ro de processus du processus enfant qui a servi la
requ�te.</td></tr>
<tr><td><code>%{<var>format</var>}P</code></td>
<td>Le num�ro de processus ou le num�ro de thread du processus
enfant qui a servi la requ�te. Les formats valides sont
<code>pid</code>, <code>tid</code>, et <code>hextid</code>.
<code>hextid</code> n�cessite APR version 1.2.0 ou sup�rieure.
</td></tr>
<tr class="odd"><td><code>%q</code></td>
<td>La cha�ne d'arguments (pr�fix�e par un <code>?</code> si une
cha�ne d'arguments existe, sinon une cha�ne vide)</td></tr>
<tr><td><code>%r</code></td>
<td>La premi�re ligne de la requ�te</td></tr>
<tr class="odd"><td><code>%R</code></td>
<td>Le gestionnaire qui g�n�re la r�ponse (s'il y en a un).</td></tr>
<tr><td><code>%s</code></td>
<td>Statut. Pour les requ�tes redirig�es en interne, il s'agit
du statut de la requ�te *originale* --- <code>%>s</code> pour
la derni�re.</td></tr>
<tr class="odd"><td><code>%t</code></td>
<td>Date � laquelle la requ�te a �t� re�ue (au format anglais
standard)</td></tr>
<tr><td><code>%{<var>format</var>}t</code></td>
<td>La date, sous la forme sp�cifi�e par format, qui devrait
�tre au format �tendu <code>strftime(3)</code> (�ventuellement
localis�). Si le format commence par <code>begin:</code> (valeur
par d�faut), la date est extraite au d�but du traitement de la
requ�te ; s'il commence par <code>end:</code>, la date
correspond au moment o� l'entr�e du journal est inscrite, par
cons�quent vers la fin du traitement de la requ�te. Hormis les
formats support�s par <code>strftime(3)</code>, les formats
suivants sont aussi disponibles :
<table>
<tr><td><code>sec</code></td><td>nombre de secondes depuis Epoch</td></tr>
<tr><td><code>msec</code></td><td>nombre de millisecondes depuis Epoch</td></tr>
<tr><td><code>usec</code></td><td>nombre de microsecondes depuis Epoch</td></tr>
<tr><td><code>msec_frac</code></td><td>fraction de milliseconde</td></tr>
<tr><td><code>usec_frac</code></td><td>fraction de microseconde</td></tr>
</table>
Ces symboles ne peuvent pas �tre combin�s entre eux ou avec un
formatage <code>strftime(3)</code> dans la m�me cha�ne de
format. Par contre, vous pouvez utiliser plusieurs symboles
<code>%{<var>format</var>}t</code>.</td></tr>
<tr class="odd"><td><code>%T</code></td>
<td>Le temps mis pour servir la requ�te, en secondes.</td></tr>
<tr><td><code>%{<var>UNIT</var>}T</code></td>
<td>Le temps mis pour traiter la requ�te dans une unit� d�finie
par <code>UNIT</code>. Les valeurs d'unit� valides sont
<code>ms</code> pour millisecondes, <code>us</code> pour
microsecondes et <code>s</code> pour secondes. Si
<code>UNIT</code> est omis, la valeur de l'unit� par d�faut est
la seconde ; sp�cifier la valeur d'unit� <code>us</code> revient
� utiliser le format <code>%D</code>. La possibilit� de
sp�cifier une valeur d'unit� avec le format <code>%T</code> est
disponible depuis la version 2.4.13 du serveur HTTP Apache.</td></tr>
<tr class="odd"><td><code>%u</code></td>
<td>L'utilisateur distant (en provenance d'auth ; peut �tre faux
si le statut de retour (<code>%s</code>) est 401).</td></tr>
<tr><td><code>%U</code></td>
<td>Le chemin de la requ�te, � l'exclusion de toute cha�ne
d'arguments.</td></tr>
<tr class="odd"><td><code>%v</code></td>
<td>Le nom canonique du serveur qui a servi la requ�te, d�fini
par la directive <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>.</td></tr>
<tr><td><code>%V</code></td>
<td>La nom du serveur en tenant compte de la d�finition de la
directive <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code>.</td></tr>
<tr class="odd"><td><code>%X</code></td>
<td>Statut de la connexion lorsque la r�ponse a �t� renvoy�e
:
<table>
<tr><td><code>X</code> =</td>
<td>connexion abandonn�e avant l'envoi de la r�ponse.</td></tr>
<tr><td><code>+</code> =</td>
<td>la connexion peut rester ouverte apr�s l'envoi de la
r�ponse.</td></tr>
<tr><td><code>-</code> = </td>
<td>la connexion sera ferm�e apr�s l'envoi de la
r�ponse.</td></tr>
</table>
</td></tr>
<tr><td><code>%I</code></td>
<td>Le nombre d'octets re�us, en comptant la requ�te et les
en-t�tes, ne peut �tre nul. N�cessite l'activation de
<code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>.</td></tr>
<tr class="odd"><td><code>%O</code></td>
<td>Nombre d'octets envoy�s, y compris les en-t�tes. Peut �tre
nul dans les rares cas o� une requ�te est avort�e avant que la
r�ponse ne soit envoy�e. N�cessite l'activation de
<code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>.</td></tr>
<tr><td><code>%S</code></td>
<td>Nombre d'octets transmis (en �mission et r�ception), y
compris corps et en-t�tes de requ�te. Ce nombre ne peut pas �tre
nul, et il correspond � la combinaison des formats %I et %O.
<code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code> doit �tre charg� pour pouvoir
utiliser ce format.</td></tr>
<tr class="odd"><td><code>%{<var>VARNAME</var>}^ti</code></td>
<td>Le contenu de <code><var>VARNAME</var>:</code> dans les
param�tres de la requ�te envoy�e au serveur.</td></tr>
<tr><td><code>%{<var>VARNAME</var>}^to</code></td>
<td>Le contenu de <code><var>VARNAME</var>:</code> dans les
param�tres de la r�ponse envoy�e par le serveur.</td></tr>
</table>
<h3><a name="modifiers" id="modifiers">Modificateurs</a></h3>
<p>Il est possible de restreindre l'enregistrement de certains
�l�ments
en fonction du code de statut de la r�ponse, en ins�rant une liste
de codes de statut s�par�s par des virgules imm�diatement apr�s le
caract�re "%". Par exemple, <code>"%400,501{User-agent}i"</code>
n'enregistrera l'en-t�te <code>User-agent</code> que dans le cas
d'une erreur 400 ou 501. Avec les autres codes de statut, c'est la
cha�ne litt�rale <code>"-"</code> qui sera enregistr�e. La liste
de codes peut �tre pr�c�d�e d'un "<code>!</code>" pour inverser la
condition : <code>"%!200,304,302{Referer}i"</code> enregistre
l'en-t�te <code>Referer</code> pour toutes les requ�tes qui
<em>ne</em> renvoient <em>pas</em> un des trois codes sp�cifi�s.</p>
<p>Les modificateurs "<" et ">" peuvent �tre utilis�s pour
les requ�tes qui ont �t� redirig�es en interne afin de choisir si
c'est respectivement la requ�te originale ou finale qui doit �tre
consult�e. Par d�faut, les directives <code>%s, %U, %T, %D,</code>
et <code>%r</code> consultent la requ�te originale, alors que
toutes les autres consultent la requ�te finale. Ainsi, par
exemple, on peut utiliser <code>%>s</code> pour enregistrer le
statut final de la requ�te, et <code>%<u</code> pour
enregistrer l'utilisateur authentifi� � l'origine pour une requ�te
redirig�e en interne vers une ressource sans authentification.</p>
<h3><a name="format-notes" id="format-notes">Quelques Notes</a></h3>
<p>Pour des raisons de s�curit�, � partir de la version 2.0.46,
les caract�res non imprimables et autres caract�res sp�ciaux dans
les directives <code>%r</code>, <code>%i</code> et <code>%o</code>
doivent �tre �chapp�s � l'aide des s�quences
<code>\x<var>hh</var></code>,
o� <var>hh</var> est le code hexad�cimal du caract�re sp�cial.
Comme exceptions � cette r�gle, les caract�res <code>"</code> et
<code>\</code> doivent �tre �chapp�s par un anti-slash, et tous
les "blancs" doivent �tre �crits selon leur notation de style C
(<code>\n</code>, <code>\t</code>, etc...). Avant la version
2.0.46, aucun �chappement n'�tait effectu� sur ces cha�nes, et il
fallait �tre tr�s prudent lors de l'exploitation des journaux
bruts.</p>
<p>A la diff�rence de la version 1.3, depuis httpd 2.0, les cha�nes
de format <code>%b</code> et <code>%B</code> ne repr�sentent pas
le nombre d'octets envoy�s au client, mais simplement la taille en
octets de la r�ponse HTTP (les deux �tant diff�rents, par exemple,
si la connexion est abandonn�e, ou si SSL est utilis�). Le format
<code>%O</code> fourni par <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>,
enregistrera le nombre r�el d'octets envoy�s sur le r�seau.</p>
<p>Note : <code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code> est impl�ment� en tant que
gestionnaire basique et non en tant que gestionnaire standard.
C'est pourquoi la cha�ne de format <code>%R</code> ne renverra pas
d'information � propos du gestionnaire lorsqu'une mise en cache de
contenu entre en jeu.</p>
<h3><a name="examples" id="examples">Exemples</a></h3>
<p>Quelques cha�nes de format couramment utilis�es :</p>
<dl>
<dt>Format de journal courant (CLF)</dt>
<dd><code>"%h %l %u %t \"%r\" %>s %b"</code></dd>
<dt>Format de journal courant avec un serveur virtuel</dt>
<dd><code>"%v %h %l %u %t \"%r\" %>s %b"</code></dd>
<dt>Format de journal NCSA �tandu/combin�</dt>
<dd><code>"%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
\"%{User-agent}i\""</code></dd>
<dt>Format de journal de la page qui contient le lien vers la
page concern�e (Referer)</dt>
<dd><code>"%{Referer}i -> %U"</code></dd>
<dt>Format de journal de l'agent (Navigateur)</dt>
<dd><code>"%{User-agent}i"</code></dd>
</dl>
<p>Vous pouvez utiliser plusieurs fois la directive
<code>%{format}t</code> pour construire un format de temps
utilisant les symboles de format �tendus tels que
<code>msec_frac</code> :</p>
<dl>
<dt>Format de temps prenant en compte les milisecondes</dt>
<dd><code>"%{%d/%b/%Y %T}t.%{msec_frac}t %{%z}t"</code></dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Consid�rations concernant la
s�curit�</a></h2>
<p>Voir le document <a href="../misc/security_tips.html#serverroot">conseils � mati�re de
s�curit�</a> pour plus de d�tails sur les raisons pour lesquelles
votre s�curit� pourrait �tre compromise, si le r�pertoire o� sont
stock�s les fichiers journaux sont inscriptibles par tout autre
utilisateur que celui qui d�marre le serveur.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="bufferedlogs" id="bufferedlogs">Directive</a> <a name="BufferedLogs" id="BufferedLogs">BufferedLogs</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Enregistre les entr�es du journal dans un tampon en m�moire
avant de les �crire sur disque</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BufferedLogs On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>BufferedLogs Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr>
</table>
<p>Lorsque la directive <code class="directive">BufferedLogs</code> est �
"on", <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> stocke de nombreuses entr�es
du journal en m�moire, et les �crit d'un seul bloc sur disque,
plut�t que de les �crire apr�s chaque requ�te. Sur certains
syst�mes, ceci peut am�liorer l'efficacit� des acc�s disque, et par
cons�quent les performances. La directive ne peut �tre d�finie
qu'une seule fois pour l'ensemble du serveur ; elle ne peut pas �tre
d�finie au niveau d'un serveur virtuel.</p>
<div class="note">Cette directive doit �tre utilis�e avec
pr�cautions car un crash peut provoquer la perte de donn�es de
journalisation.</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="customlog" id="customlog">Directive</a> <a name="CustomLog" id="CustomLog">CustomLog</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit le nom et le format du fichier
journal</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CustomLog <var>fichier</var>|<var>pipe</var>
<var>format</var>|<var>alias</var>
[env=[!]<var>variable-environnement</var>|
expr=<var>expression</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr>
</table>
<p>La directive <code class="directive">CustomLog</code> permet de contr�ler
la journalisation des requ�tes destin�es au serveur. Un format de
journal est sp�cifi�, et la journalisation peut s'effectuer de
mani�re conditionnelle en fonction des caract�ristiques de la
requ�te en utilisant des variables d'environnement.</p>
<p>Le premier argument, qui sp�cifie l'emplacement o� les journaux
seront �crits, accepte deux types de valeurs :</p>
<dl>
<dt><var>fichier</var></dt>
<dd>Un nom de fichier, relatif au r�pertoire d�fini par la
directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.</dd>
<dt><var>pipe</var></dt>
<dd>Le caract�re pipe "<code>|</code>", suivi du chemin vers un
programme qui recevra les informations de la journalisation sur
son entr�e standard. Voir les notes � propos de la <a href="../logs.html#piped">journalisation redirig�e</a> pour plus
d'informations.
<div class="warning"><h3>S�curit� :</h3>
<p>Si les journaux sont redirig�s vers un programme, ce dernier
s'ex�cutera sous l'utilisateur qui a d�marr�
<code class="program"><a href="../programs/httpd.html">httpd</a></code>. Ce sera l'utilisateur root si le serveur
a �t� d�marr� par root ; v�rifiez que le programme est
s�curis�.</p>
</div>
<div class="warning"><h3>Note</h3>
<p>Lors de la sp�cification d'un chemin de fichier sur les
plate-formes non-Unix, il faut prendre soin de ne pas oublier
que seuls les slashes directs doivent �tre utilis�s, m�me si la
plate-forme autorise l'emploi d'anti-slashes. D'une mani�re
g�n�rale, c'est une bonne id�e que de n'utiliser que des slashes
directs dans les fichiers de configuration.</p>
</div></dd>
</dl>
<p>Le second argument permet de d�finir ce qui va �tre �crit dans le
fichier journal. Il peut contenir soit un <var>alias</var> pr�d�fini
par une directive <code class="directive"><a href="#logformat">LogFormat</a></code>, soit une cha�ne de
<var>format</var> explicite comme d�crit dans la section <a href="#formats">formats de journaux</a>.</p>
<p>Par exemple, les deux blocs de directives suivants produisent le
m�me effet :</p>
<pre class="prettyprint lang-config"># Journal personnalis� avec alias de format
LogFormat "%h %l %u %t \"%r\" %>s %b" common
CustomLog "logs/access_log" common
# Journal personnalis� avec cha�ne de format explicite
CustomLog "logs/access_log" "%h %l %u %t \"%r\" %>s %b"</pre>
<p>Le troisi�me argument est optionnel et permet de contr�ler si une
requ�te doit �tre ou non journalis�e. Dans le cas d'une clause
'<code>env=!<var>nom</var></code>', la condition peut �tre la
pr�sence ou l'absence d'une variable particuli�re dans
l'<a href="../env.html">environnement du serveur</a>. Dans le cas
d'une clause 'expr=<var>expression</var>', la condition consiste
en une <a href="../expr.html">expression</a> bool�enne
quelconque. Si la condition n'est pas v�rifi�e, la requ�te ne sera
pas journalis�e. D'�ventuelles r�f�rences � des en-t�tes HTTP dans
l'expression rationnelle n'entra�neront pas l'ajout des noms
d'en-t�te correspondants � l'en-t�te Vary.</p>
<p>Les variables d'environnement peuvent �tre d�finies au niveau de
chaque requ�te en utilisant les modules
<code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> et/ou <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>.
Par exemple, si vous voulez enregistrer les requ�tes pour toutes les
images GIF sur votre serveur dans un fichier journal s�par�, et pas
dans votre journal principal, vous pouvez utiliser :</p>
<pre class="prettyprint lang-config">SetEnvIf Request_URI \.gif$ gif-image
CustomLog "gif-requests.log" common env=gif-image
CustomLog "nongif-requests.log" common env=!gif-image</pre>
<p>Ou, pour reproduire le comportement de l'ancienne directive
RefererIgnore, vous pouvez utiliser :</p>
<pre class="prettyprint lang-config">SetEnvIf Referer example\.com localreferer
CustomLog "referer.log" referer env=!localreferer</pre>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="logformat" id="logformat">Directive</a> <a name="LogFormat" id="LogFormat">LogFormat</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�crit un format utilisable dans un fichier
journal</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LogFormat <var>format</var>|<var>alias</var>
[<var>alias</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">D�faut:</a></th><td><code>LogFormat "%h %l %u %t \"%r\" %>s %b"</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr>
</table>
<p>Cette directive permet de sp�cifier le format du fichier journal
des acc�s.</p>
<p>La directive <code class="directive">LogFormat</code> se pr�sente sous
deux formes. Sous la premi�re forme, qui ne poss�de qu'un seul
argument, la directive d�finit le format qui sera utilis� dans les
journaux sp�cifi�s par les directives
<code class="directive">TransferLog</code> ult�rieures. L'argument unique
peut contenir un <var>format</var> explicite comme d�crit dans la
section <a href="#formats">formats de journaux personnalis�s</a>
ci-dessus. Il peut aussi contenir un <var>alias</var> faisant
r�f�rence � un format de journal pr�d�fini par une directive
<code class="directive">LogFormat</code> comme d�crit plus loin.</p>
<p>Sous sa seconde forme, la directive
<code class="directive">LogFormat</code> associe un <var>format</var>
explicite � un <var>alias</var>. Cet <var>alias</var> peut
ensuite s'utiliser dans les directives
<code class="directive">LogFormat</code> ou <code class="directive"><a href="#customlog">CustomLog</a></code> ult�rieures, ce qui
�vite d'avoir � r�p�ter l'ensemble de la cha�ne de format. Une
directive <code class="directive">LogFormat</code> qui d�finit un alias
<strong>ne fait rien d'autre</strong> -- c'est � dire qu'<em>elle ne
fait que</em> d�finir l'alias, elle n'applique pas le format et n'en
fait pas le format par d�faut. Par cons�quent, elle n'affecte pas
les directives <code class="directive"><a href="#transferlog">TransferLog</a></code> ult�rieures. En
outre, la directive <code class="directive">LogFormat</code> ne peut pas
utiliser un alias pour en d�finir un autre. Notez que l'alias ne
doit pas contenir de caract�re pourcent (<code>%</code>).</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">LogFormat "%v %h %l %u %t \"%r\" %>s %b" serveur_virtuel_commun</pre>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="transferlog" id="transferlog">Directive</a> <a name="TransferLog" id="TransferLog">TransferLog</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sp�cifie l'emplacement d'un fichier journal</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>TransferLog <var>fichier</var>|<var>pipe</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr>
</table>
<p>Cette directive poss�de exactement les m�mes arguments et produit
les m�mes effets que la directive <code class="directive"><a href="#customlog">CustomLog</a></code>, � l'exception qu'elle
ne permet pas de sp�cifier un format de journal explicite ou la
journalisation conditionnelle des requ�tes. En l'occurrence, le
format de journal est d�termin� par la derni�re d�finition d'une
directive <code class="directive"><a href="#logformat">LogFormat</a></code>
qui ne d�finit pas d'alias. Si aucun format particulier n'a �t�
sp�cifi�, c'est le Common Log Format qui sera utilis�.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""
TransferLog logs/access_log</pre>
</div>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_log_config.html" title="Fran�ais"> fr </a> |
<a href="../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
<a href="../ko/mod/mod_log_config.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="T�rk�e"> tr </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_log_config.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2015 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>