Serveur Apache HTTP Version 2.4

Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

# Module Apache mod_log_debug

Langues Disponibles: en | fr

Description: | Journalisation supplémentaire à des fins de débogage
Statut: | Expérimental
Identificateur de Module: | log_debug_module
Fichier Source: | mod_log_debug.c
Compatibilité: | Disponible depuis la version 2.3.14 d'Apache

### Sujets

- Exemples

### Directives

- Commentaires

## Exemples

1. Enregistre un message après le traitement d'une requête pour /foo/* :

       <Location "/foo/">
         LogMessage "/foo/ has been requested"
       </Location>

2. Enregistre un message si une requête pour /foo/* est traitée dans une sous-requête :

       <Location "/foo/">
         LogMessage "subrequest to /foo/" hook=type_checker expr=%{IS_SUBREQ}
       </Location>

   Le branchement (hook) par défaut log_transaction n'est pas exécuté pour les sous-requêtes ; nous devons donc en utiliser un autre.
3. Enregistre un message si un client IPv6 est à l'origine d'un dépassement de délai pour une requête :

       LogMessage "IPv6 timeout from %{REMOTE_ADDR}" "expr=-T %{IPV6} && %{REQUEST_STATUS} = 408"

   Notez l'emplacement des guillemets pour l'argument `expr=`.
4. Enregistre la valeur de la variable d'environnement de requête "X-Foo" à chaque étape du traitement :

       <Location "/">
         LogMessage "%{reqenv:X-Foo}" hook=all
       </Location>

   En association avec les repères de temps en microsecondes du journal des erreurs, `hook=all` permet aussi de déterminer la durée d'exécution des différentes phases du traitement de la requête.

## Directive LogMessage

Description: | Enregistre des messages personnalisés dans le journal des erreurs
Syntaxe: | `LogMessage message [hook=hook] [expr=expression]`
Défaut: | `Non défini`
Contexte: | répertoire
Statut: | Expérimental
Module: | mod_log_debug

Cette directive permet d'enregistrer un message personnalisé dans le journal des erreurs. Ce message peut utiliser des variables et des fonctions dans la syntaxe ap_expr. 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. Les messages sont enregistrés au loglevel info.

Le branchement (hook) précise la phase du traitement de la requête avant laquelle le message sera enregistré. Les branchements suivants sont supportés :

Nom
`translate_name`
`type_checker`
`quick_handler`
`map_to_storage`
`check_access`
`check_access_ex`
`insert_filter`
`check_authn`
`check_authz`
`fixups`
`handler`
`log_transaction`

Le branchement par défaut est `log_transaction`. La valeur spéciale `all` est également supportée ; dans ce cas, le message sera enregistré à chaque phase. Tous les branchements ne sont pas exécutés pour chaque requête.

L'expression optionnelle permet de restreindre l'enregistrement du message en fonction d'une certaine condition. La syntaxe de l'expression est décrite dans la documentation ap_expr. 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.

Langues Disponibles: en | fr

## Commentaires

Notice:
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 mailing lists.