Il s'agit d'une Valve dont le but est de produire des
fichiers de logs dans un format similaire à celui des serveurs web classiques. Le but est de permettre l'analyse de ces logs par des outils d'analyse standard (nombre de pages visistées, tracking de session...). On associe une telle Valve à un conteneur Tomcat (Engine, Host ou Context) et elle enregistrera toutes les requêtes traitées par celui-ci.
Un certain nombre de paramètres et de fonctionnalités sont communes à cette Valve et au File Logger de Tomcat. Notamment le changement automatique quotidien de fichier de log (pour la première requête reçue après minuit).
Pour utiliser cette Valve, on spécifie bien sûr une balise Valve à laquelle on fournira comme attribut className la valeur "org.apache.catalina.valves.AccessLogValve".
Engine, Host ou Context. Chacun peut recevoir autant de Valve que souhaité.
Aucune.
Nom |
Description |
className |
Nom de la classe Java à utiliser pour cette Valve. Cet attribut est obligatoire car il s'agit de spécifier quelle Valve on utilise. En l'occurence, ici, la valeur doit être org.apache.catalina.valves.AccessLogValve. |
Nom |
Description |
directory |
Répertoire où enregistrer les logs. Le chemin peut être absolu, ou relatif au répertoire de base de Tomcat (TOMCAT_HOME). Si aucun répertoire n'est spécifié, le répertoire "logs" de Tomcat sera utilisé par défaut. |
pattern |
Format de la chaîne de caractères représentant un log. La configuration de la pattern est détaillée juste en dessous. La valeur par défaut est "%h %l %u %t "%r" %s %b" (voir la signification plus bas ). |
prefix |
Le préfixe à utiliser lors de la création des noms de fichiers. Si le préfixe est "myapp." et le suffixe ".log", les fichiers auront pour nom myapp.2004-01-20.log.txt. Le préfixe par défaut est " access_log.". Donc, pour un préfixe vide, utiliser la chaîne de caractères "" (vide). |
resolveHosts |
Active la recherche DNS pour enregistrer les noms DNS des clients au lieu des adresses IP. |
suffix |
Le suffixe à utiliser lors de la création des noms de fichiers. Si le préfixe est "myapp." et le suffixe ".log", les fichiers auront pour nom myapp.2004-01-20.log.txt. Le suffixe par défaut est "" (chaîne de caractères vide). |
=> Définition de la pattern Dans l'attribut pattern, on peut combiner des chaînes de caractères constantes ("monAppli") et des paramètres relatifs aux données enregistrées (commençant par '%'), dont voici la liste :
- %a - Adresse IP client
- %A - Adresse IP serveur
- %b - Nombre d'octets envoyés (sauf les en-têtes HTTP). La valeur est '-' si aucun octet n'est envoyé.
- %B - Nombre d'octets envoyés.
- %h - Nom DNS du client si resolveHosts est à true. Sinon, adresse IP client.
- %H - Protocole de la requête.
- %m - Méthode de la requête (GET, POST).
- %p - Port local qui a reçu la requête.
- %q - Chaîne de paramètres de la requête. Elle commence par le symbole '?'.
- %r - Première ligne de la requête, correspondant à la méthode et à l'URI demandée.
- %s - Code HTTP de la réponse (200 pour OK, 404 pour Page Not Found...).
- %S - Identificateur de session.
- %t - Date et heure, au format "Common Log Format ".
- %u - Utilisateur authentifié. Si l'utilisateur n'était authentifié, la valeur est '-' .
- %U - URL demandée.
- %v - Nom du serveur.
Comme indiqué plus haut, la valeur par défaut est "%h %l %u %t "%r" %s %b" .
|