Citrix ADC

Personnaliser la connexion sur le système client NSWL

Vous pouvez personnaliser la journalisation sur le système client Citrix ADC Web Logging (NSWL) en apportant davantage de modifications au fichier de configuration du client NSWL (log.conf). Utilisez un éditeur de texte pour modifier le fichier de configuration log.conf sur le système client.

Pour personnaliser la journalisation, utilisez le fichier de configuration pour définir les filtres et les propriétés du journal.

  • Filtres de journaux. Filtrez les informations du journal en fonction de l’adresse IP de l’hôte, du nom de domaine et du nom d’hôte des serveurs Web.
  • Propriétés du journal. Chaque filtre est associé à un ensemble de propriétés de journal. Les propriétés du journal définissent le mode de stockage des informations de journal filtrées.

Exemple de fichier de configuration

Voici un exemple de fichier de configuration :

##########
# This is the NSWL configuration file
# Only the default filter is active
# Remove leading # to activate other filters
##########
##########
# Default filter (default on)
# W3C Format logging, new file is created every hour or on reaching 10MB file size,
# and the file name is Exyymmdd.log
##########
Filter default
begin default
        logFormat               W3C
        logInterval             Hourly
        logFileSizeLimit        10
        logFilenameFormat       Ex%`{`%y%m%d}t.log
end default
##########
# Citrix ADC caches example
# CACHE_F filter covers all the transaction with HOST name www.netscaler.com and the listed server ip's
##########
#Filter CACHE_F HOST www.netscaler.com IP 192.168.100.89 192.168.100.95 192.168.100.52 192.168.100.53 ON
##########
# netscaler origin server example
# Not interested in Origin server to Cache traffic transaction logging
##########
#Filter ORIGIN_SERVERS IP 192.168.100.64 192.168.100.65 192.168.100.66 192.168.100.67 192.168.100.225 192.168.100.226 192.168.
100.227 192.168.100.228 OFF
##########
# netscaler image server example
# all the image server logging.
##########
#Filter IMAGE_SERVER HOST www.netscaler.images.com IP 192.168.100.71 192.168.100.72 192.168.100.169 192.168.100.170 192.168.10
0.171 ON
##########
# NCSA Format logging, new file is created every day midnight or on reaching 20MB file size,
# and the file name is /datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log.
# Exclude objects that ends with .gif .jpg .jar.
##########
#begin ORIGIN_SERVERS
#       logFormat               NCSA
#       logInterval             Daily
#       logFileSizeLimit        40
#       logFilenameFormat       /datadisk5/ORGIN/log/%v/NS%`{`%m%d%y}t.log
#       logExclude              .gif .jpg .jar
#end ORIGIN_SERVERS

##########
# NCSA Format logging, new file is created every day midnight or on reaching 20MB file size,
# and the file name is /datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log with log record timestamp as GMT.
##########
#begin CACHE_F
#       logFormat               NCSA
#       logInterval             Daily
#       logFileSizeLimit        20
#       logFilenameFormat /datadisk5/netscaler/log/%v/NS%`{`%m%d%y}t.log
#       logtime                 GMT
#end CACHE_F

##########
# W3C Format logging, new file on reaching 20MB and the log file path name is
# atadisk6/netscaler/log/server's ip/Exmmyydd.log with log record timestamp as LOCAL.
##########
#begin IMAGE_SERVER
#       logFormat               W3C
#       logInterval             Size
#       logFileSizeLimit        20
#       logFilenameFormat /datadisk6/netscaler/log/%AEx%`{`%m%d%y}t
#       logtime                 LOCAL
#end IMAGE_SERVER

##########
# Virtual Host by Name firm, can filter out the logging based on the host name by,
##########

#Filter VHOST_F IP 10.101.2.151 NETMASK 255.255.255.0
#begin VHOST_F
#       logFormat               W3C
#       logInterval             Daily
#       logFileSizeLimit        10
logFilenameFormat /ns/prod/vhost/%v/Ex%`{`%m%d%y}t
#end VHOST_F

########## END FILTER CONFIGURATION ##########
<!--NeedCopy-->

Créer des filtres

Vous pouvez utiliser la définition de filtre par défaut dans le fichier de configuration (log.conf), ou modifier le filtre ou créer un filtre. Vous pouvez créer plusieurs filtres de journal.

Remarque :

La journalisation consolidée, qui enregistre les transactions pour lesquelles aucun filtre n’est défini, utilise le filtre par défaut s’il est activé. La journalisation consolidée de tous les serveurs peut être effectuée en définissant uniquement le filtre par défaut.

Si le serveur héberge plusieurs sites Web et que chaque site Web possède son propre nom de domaine et que chaque domaine est associé à un serveur virtuel, vous pouvez configurer la journalisation du serveur Web pour créer un répertoire de journaux distinct pour chaque site Web. Le tableau suivant affiche les paramètres de création d’un filtre.

Tableau 1. Paramètres de création d’un filtre

Paramètre Spécifie
FilterName Nom du filtre. Le nom du filtre peut inclure des caractères alphanumériques et ne peut pas dépasser 59 caractères. Les noms de filtre de plus de 59 caractères sont tronqués à 59 caractères.
Nom d’hôte Nom d’hôte du serveur pour lequel les transactions sont enregistrées.
IP ip Adresse IP du serveur pour lequel les transactions doivent être consignées (par exemple, si le serveur a plusieurs domaines qui ont une adresse IP).
IP ip 2...ip n : Plusieurs adresses IP (par exemple, si le domaine du serveur a plusieurs adresses IP).
IP ip6 Adresse IPv6 du serveur pour lequel les transactions doivent être consignées.
IP du masque de sous-réseau IP Combinaison d’adresses IP et de masque de réseau à utiliser sur un sous-réseau.
ON | OFF Activez ou désactivez le filtre pour consigner les transactions. Si aucun argument n’est sélectionné, le filtre est activé (ON).

Pour créer un filtre, saisissez la commande suivante dans le fichier log.conf :

  • filter <filterName> <HOST name> | [IP<ip> ] | [IP<ip 2...ip n> ] | <IP ip NETMASK mask> [ON | OFF]

  • filter <filterName> <HOST name> | [IP6 ip/<prefix length>] [ON | OFF]

Création d’un filtre pour un serveur virtuel

Pour créer un filtre pour un serveur virtuel, entrez la commande suivante dans le fichier log.conf :

filter <filterName> <VirtualServer IP address>

Exemple

Dans l’exemple suivant, vous spécifiez une adresse IP 192.168.100.0 et un masque réseau 255.255.255.0. Le filtre s’applique aux adresses IP 192.168.100.1 à 192.168.100.254.

Filter F1 HOST www.netscaler.com ON
Filter F2 HOST www.netscaler.com IP 192.168.100.151 ON
Filter F3 HOST www.netscaler.com IP 192.168.100.151 192.165.100.152 ON
Filter F4 IP 192.168.100.151
Filter F5 IP 192.168.100.151 HOST www.netscaler.com OFF
Filter F6 HOST www.netscaler.com HOST www.xyz.com HOST www.abcxyz.com IP 192.168.100.200 ON
Filter F7 IP 192.250.100.0 NETMASK 255.255.255.0
Filter F8 HOST www.xyz.com IP 192.250.100.0 NETMASK 255.255.255.0 OFF
For creating filters for servers having IPv6 addresses.
Filter F9 2002::8/112 ON
Filter F10 HOST www.abcd.com IP6 2002::8 ON

<!--NeedCopy-->

Spécifier les propriétés du

Les propriétés du journal sont appliquées à toutes les entrées de journal associées au filtre. La définition de la propriété log commence par le mot-clé BEGIN et se termine par, END comme illustré dans l’exemple suivant :

BEGIN <filtername>
 logFormat ...
 logFilenameFormat ...
 logInterval ...
 logFileSize ....
 logExclude ....
 logTime ….
 END
<!--NeedCopy-->

Les entrées de la définition peuvent inclure les éléments suivants :

  • LogFormat spécifie la fonctionnalité de journalisation du serveur Web qui prend en charge les formats de fichiers journaux NCSA, W3C Extended et personnalisés.

Par défaut, la logformat propriété est w3c. Pour remplacer, entrez personnalisé ou NCSA dans le fichier de configuration, par exemple :

LogFormat NCSA
<!--NeedCopy-->

Remarque :

Pour le format NCSA et les formats de journaux personnalisés, l’heure locale est utilisée pour les transactions d’horodatage et pour la rotation des fichiers.

  • LogInterval spécifie les intervalles auxquels les nouveaux fichiers journaux sont créés. Utilisez l’une des valeurs suivantes :

    • Toutes les heures : Un fichier est créé toutes les heures.
    • Quotidien : Un fichier est créé tous les jours à minuit. Valeur par défaut.
    • Hebdomadaire : Un fichier est créé tous les dimanches à minuit.
    • Mensuel : Un fichier est créé le premier jour du mois à minuit.
    • Aucun : un fichier n’est créé qu’une seule fois, lorsque la journalisation du serveur Web démarre.</span>

Exemple :

LogInterval Daily
<!--NeedCopy-->

LogFileSizeLimit spécifie la taille maximale du fichier journal en Mo. Il peut être utilisé avec n’importe quel intervalle de log (hebdomadaire, mensuel, etc.) Un fichier est créé lorsque la limite de taille maximale du fichier est atteinte ou lorsque l’intervalle de journalisation défini s’écoule.

Pour remplacer ce comportement, spécifiez la taille en tant que propriété loginterval afin qu’un fichier soit créé uniquement lorsque la limite de taille du fichier journal est atteinte.

La valeur par défaut LogFileSizeLimit est de 10 Mo.

Exemple :

LogFileSizeLimit 35
<!--NeedCopy-->
  • LogFileNameFormat spécifie le format du nom de fichier du fichier journal. Le nom du fichier peut être du type suivant :

    • Statique : spécifie une chaîne constante qui contient le chemin absolu et le nom de fichier.

      Dynamique : spécifie une expression contenant le format suivant :

      • Adresse IP du serveur
      • Date (% {format} t)
      • Suffixe d’URL (%x)
      • Nom d’hôte (%v)

Exemple :

LogFileNameFormat Ex%`{`%m%d%y}t.log
<!--NeedCopy-->

Cette commande crée le premier nom de fichier Exmmddyy.log, puis chaque heure crée un fichier avec un nom de fichier : Exmmddyy.log.0, Exmmddyy.Log.1,…, Exmmddyy.log.N.

Exemple :

     LogInterval size
     LogFileSize 100
     LogFileNameFormat Ex%`{`%m%d%y}t
<!--NeedCopy-->

Avertissement :

Le format de date%t spécifié dans la commande LogFileNameFormat remplace la propriété d’intervalle de journalisation de ce filtre. Pour empêcher la création d’un nouveau fichier tous les jours plutôt que lorsque la taille du fichier journal spécifiée est atteinte, n’utilisez pas%t dans LogFileNameFormat.

  • LogExclude empêche la journalisation des transactions avec les extensions de noms de fichiers spécifiées.

Exemple :

LogExclude.html
<!--NeedCopy-->

Cette commande crée un fichier journal qui exclut les transactions de journal pour les fichiers*.html.

LogTime spécifie l’heure du journal au format GMT ou LOCAL.

Les valeurs par défaut sont les suivantes :

  • Format du fichier journal NCSA : LOCAL
  • Format du fichier journal W3C : GMT.

Comprendre les formats de journaux NCSA et W3C

Citrix ADC prend en charge les formats de fichiers journaux standard suivants :

  • Format de journal commun NCSA
  • Format de journal étendu W3C

Format de journal commun NCSA

Si le format du fichier journal est NCSA, le fichier journal affiche les informations de journal au format suivant :

Client_IP_address -User_Name [Date:Time -TimeZone] "Method Object HTTP_version" HTTP_StatusCode BytesSent
<!--NeedCopy-->

Pour utiliser le format de journal commun NCSA, entrez NCSA dans l’argument LogFormat du log.conf fichier.

Le tableau suivant décrit le format de journal commun NCSA.

Argument Spécifie
Adresse_IP_client L’adresse IP de l’ordinateur client.
User Name Le nom d’utilisateur.
Date Date de la transaction.
Time L’heure à laquelle la transaction a été terminée.
Fuseau horaire Le fuseau horaire (Greenwich Mean Time ou heure locale).
Method La méthode de demande (par exemple ; GET, POST).
Objet L’URL.
HTTP_version La version de HTTP utilisée par le client.
HTTP_StatusCode Code d’état de la réponse.
Bytes Sent Le nombre d’octets envoyés par le serveur.

Format de journal étendu W3C

Un fichier journal étendu contient une séquence de lignes contenant des caractères ASCII terminées par un saut de ligne (LF) ou la séquence saut de ligne retour chariot (CRLF). Les générateurs de fichiers journaux doivent respecter la convention de fin de ligne pour la plate-forme sur laquelle ils sont exécutés.

Les analyseurs de log doivent accepter le formulaire LF ou CRLF. Chaque ligne peut contenir une directive ou une entrée. Si vous souhaitez utiliser le format de journal étendu W3C, entrez W3C comme argument Log Format dans le fichier log.conf.

Par défaut, le format de journal standard du W3C est défini en interne comme format de journal personnalisé, comme suit :

%`{`%Y-%m-%d%H:%M:%S}t %a %u %S %A %p %m %U %q %s %j %J %T %H %+{user-agent}i %+{cookie} i%+{referer}i
<!--NeedCopy-->

Vous pouvez également modifier l’ordre ou supprimer certains champs dans ce format de journal W3C. Par exemple :

logFormat W3C %`{`%Y-%m-%d%H:%M:%S}t %m %U
<!--NeedCopy-->

Les entrées de journal du W3C sont créées au format suivant :

#Version: 1.0
#Fields: date time cs-method cs-uri
#Date: 12-Jun-2001 12:34
2001-06-12 12:34:23 GET /sports/football.html 2001-06-12 12:34:30
GET /sports/football.html
<!--NeedCopy-->

Entrées

Les entrées consistent en une séquence de champs relatifs à une seule transaction HTTP. Les champs sont séparés par des espaces blancs. Citrix recommande l’utilisation de caractères de tabulation. Si un champ d’une entrée particulière n’est pas utilisé, un tiret (-) marque le champ omis.

Directives

Consultez le tableau Directives pour plus d’informations sur le processus de journalisation. Les lignes commençant par le signe dièse (#) contiennent des directives.

Exemple :

L’exemple de fichier journal suivant montre les entrées de journal au format journal étendu W3C :

#Version: 1.0
#Fields: time cs-method cs-uri
#Date: 12-Jan-1996 00:00:00
00:34:23 GET /sports/football.html
12:21:16 GET /sports/football.html
12:45:52 GET /sports/football.html
12:57:34 GET /sports/football.html
<!--NeedCopy-->

Champs

La directive Fields répertorie une séquence d’identificateurs de champ qui spécifient les informations enregistrées dans chaque entrée. Les identificateurs de champs peuvent comporter l’une des formes suivantes :

  • identificateur : se rapporte à l’ensemble de la transaction.
  • prefix-identifier : concerne le transfert d’informations entre parties définies par le préfixe de valeur.
  • prefix (header) : spécifie la valeur de l’en-tête du champ d’en-tête HTTP pour le transfert entre parties défini par le préfixe de valeur. Les champs spécifiés de cette manière ont toujours le type.

Le tableau suivant décrit les préfixes définis.

Préfixe Spécifie
c Client
s Serveur
r Distant
cs Client vers serveur
cs Serveur vers client
sr Serveur vers serveur distant (préfixe utilisé par les proxies)
rs Serveur à serveur distant (préfixe utilisé par les proxies)
x Identifiant spécifique à l’application

Exemples :

Les exemples suivants sont des identificateurs définis qui utilisent des préfixes :

cs-method : La méthode dans la requête envoyée par le client au serveur.

sc (Referer) : Le Referer champ de la réponse.

c-ip : L’adresse IP du client.

Identifiants

Le tableau suivant décrit les identificateurs de format de journal étendu du W3C qui ne nécessitent pas de préfixe.

Identifiant Description
date Date à laquelle la transaction a été effectuée.
temps L’heure à laquelle la transaction est terminée.
temps pris Le temps (en secondes) nécessaire à la réalisation de la transaction.
octets Le nombre d’octets transférés.
mis en cache Enregistre si un accès au cache s’est produit. Un zéro indique l’absence d’un cache.

Le tableau suivant décrit les identificateurs de format de journal étendu du W3C qui nécessitent un préfixe.

Identifiant Description
IP L’adresse IP et le numéro de port.
DNS Nom DNS.
status Le code d’état.
comment Le commentaire est retourné avec un code d’état.
method La méthode.
url L’URL.
url-stem La partie racine de l’URL.
url-query Partie requête de l’URL.

Le format de fichier journal étendu du W3C vous permet de choisir des champs de journal. Ces champs sont présentés dans le tableau suivant.

Champ Description
Date Date à laquelle la transaction est effectuée.
Time L’heure à laquelle la transaction est terminée.
Client IP L’adresse IP du client.
User Name Le nom d’utilisateur.
Service Name Le nom du service, qui est toujours HTTP.
Server IP L’adresse IP du serveur.
Server Port Le numéro de port du serveur
Method La méthode de demande (par exemple ; GET, POST).
Url Stem La ressource de l’URL.
Url Query Partie requête de l’URL.
HTTP Status Code d’état de la réponse.
Bytes Sent Le nombre d’octets envoyés au serveur (taille de la demande, y compris les en-têtes HTTP).
Bytes Received Le nombre d’octets reçus du serveur (taille de la réponse, y compris les en-têtes HTTP).
Time Taken Le temps nécessaire à la réalisation d’une transaction, en secondes.
Protocol Version Numéro de version du protocole HTTP utilisé par le client.
User Agent Le champ User-Agent dans le protocole HTTP.
Cookie Le champ Cookie du protocole HTTP.
Referer Champ Referer du protocole HTTP.

Création d’un format de journal personnalisé

Vous pouvez personnaliser le format d’affichage des données du fichier journal manuellement ou à l’aide de la bibliothèque NSWL. En utilisant le format de journal personnalisé, vous pouvez dériver la plupart des formats de journaux actuellement pris en charge par Apache.

Création d’un format de journal personnalisé à l’aide de la bibliothèque NSWL

Utilisez l’une des bibliothèques NSWL suivantes selon que l’exécutable NSWL a été installé sur un ordinateur hôte Windows ou Solaris :

  • Windows : bibliothèque nswl.lib du répertoire \ns\bin de l’ordinateur hôte du gestionnaire du système.
  • Solaris : bibliothèque libnswl.a dans usr/local/netscaler/bin.
  1. Ajoutez les deux fonctions C suivantes définies par le système dans un fichier source C :

    ns_userDefFieldName() : Cette fonction renvoie la chaîne qui doit être ajoutée en tant que nom de champ personnalisé dans l’enregistrement du journal.

    ns_userDefFieldVal() : Cette fonction implémente la valeur de champ personnalisée, puis la renvoie sous forme de chaîne qui doit être ajoutée à la fin de l’enregistrement de journal.

  2. Compilez le fichier dans un fichier objet.
  3. Liez le fichier objet à la bibliothèque NSWL (et éventuellement à des bibliothèques tierces) pour former un nouvel exécutable NSWL.
  4. Ajoutez une chaîne %d à la fin de la chaîne LogFormat dans le fichier de configuration (log.conf).

Exemple :

##########
# A new file is created every midnight or on reaching 20MB file size,
# and the file name is
/datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log and create
digital
#signature field for each record.
BEGIN CACHE_F
    logFormat custom "%a - "%{user-agent}i" [%d/%B/%Y %T -%g] "%x"
%s %b%{referrer}i "%{user-agent}i" "%{cookie}i" %d "
    logInterval Daily
    logFileSizeLimit 20
    logFilenameFormat
/datadisk5/netscaler/log/%v/NS%`{`%m%d%y}t.log
END CACHE_F
<!--NeedCopy-->

Création manuelle d’un format de journal personnalisé

Pour personnaliser le format dans lequel les données du fichier journal doivent apparaître, spécifiez une chaîne de caractères comme argument de la définition de la propriété de journal LogFormat . Voici un exemple où des chaînes de caractères sont utilisées pour créer un format de journal :

LogFormat Custom ""%a - "%{user-agent}i" %[%d/%m/%Y]t %U %s %b %T"
<!--NeedCopy-->
  • La chaîne peut contenir les caractères de contrôle de type “c” \n et \t pour représenter de nouvelles lignes et onglets.
  • Utilisez la touche Echap avec des guillemets littéraux et des barres obliques inverses.

Les caractéristiques de la demande sont consignées en plaçant les directives % dans la chaîne de format, qui sont remplacées dans le fichier journal par les valeurs.

Si le spécificateur de format%v (nom d’hôte) ou%x (suffixe d’URL) est présent dans une chaîne de format de nom de fichier journal, les caractères suivants du nom de fichier sont remplacés par un symbole de trait de soulignement dans le nom du fichier de configuration du journal :

" *. /: < > ? \ |

Les caractères dont les valeurs ASCII se situent entre 0 et 31 sont remplacés par ce qui suit :

%<ASCII value of character in hexadecimal>.

Par exemple, le caractère avec la valeur ASCII 22 est remplacé par%16.

Avertissement :

Si le spécificateur de format%v est présent dans une chaîne de format de nom de fichier journal, un fichier distinct est ouvert pour chaque hôte virtuel. Pour garantir une journalisation continue, le nombre maximal de fichiers qu’un processus peut ouvrir doit être suffisamment volumineux. Consultez la documentation de votre système d’exploitation pour obtenir une procédure permettant de modifier le nombre de fichiers pouvant être ouverts.

Création de formats de journaux Apache

Vous pouvez dériver des journaux personnalisés la plupart des formats de journaux actuellement pris en charge par Apache. Les formats de journal personnalisés qui correspondent aux formats de journal Apache sont les suivants :

NCSA/combiné : LogFormat personnalisé%h%l%u [%t] « %r » %S%B « % {referer} i » « % {user-agent} i »

NCSA/Common: LogFormat custom %h %l %u [%t] “%r” %s %B

Referer Journal : LogFormat personnalisé « % {referer} i » ->%U

Agent utilisateur : LogFormat custom% {user-agent} i

De même, vous pouvez dériver les autres formats de journal du serveur à partir des formats personnalisés.

Arguments de définition d’un format de journal personnalisé

Le tableau suivant décrit le format de journal personnalisé.

Argument Spécifie
%a Adresse IPv4 distante.
%A Adresse IPv4 locale.
%a6 Adresse IPv6 distante.
%A6 Adresse IPv6 locale.
%B Octets envoyés, à l’exception des en-têtes HTTP (taille de réponse).
%b Octets reçus, à l’exception des en-têtes HTTP (taille de la requête).
%d Champ défini par l’utilisateur.
%K Informations sur le port du client.
%e1 Valeur du premier en-tête de requête HTTP personnalisé.
%e2 Valeur du deuxième en-tête de requête HTTP personnalisé.
%E1 Valeur du premier en-tête de réponse HTTP personnalisé.
%E2 Valeur du deuxième en-tête de réponse HTTP personnalisé. Remarque : Pour obtenir des instructions sur la façon d’exporter des en-têtes HTTP personnalisés, voir Configuration de NetScaler pour la journalisation du serveur Web
%g Décalage horaire moyen de Greenwich (par exemple, -0800 pour l’heure normale du Pacifique).
%h Adresse IPv4 d’un hôte distant.
%h6 Adresse IPv6 d’un hôte distant.
H Protocole de demande.
% {Foobar}i Contenu de la ou des lignes d’en-tête Foobar : dans la requête envoyée au serveur. Le système prend en charge les en-têtes User-Agent, Referer et cookie. Le signe + après le % dans ce format indique au client de journalisation d’utiliser le signe + comme séparateur de mots.
%j Octets reçus, y compris les en-têtes (taille de la demande).
%J Octets envoyés, y compris les en-têtes (taille de réponse).
%l Nom du journal distant (provenant d’identd, s’il est fourni).
%m Méthode de demande.
%M Temps nécessaire pour traiter la demande (en microsecondes).
% {Foobar}o Contenu de Foobar : ligne (s) d’en-tête dans la réponse. USER -AGENT, Referrer et les en-têtes de cookie (y compris les en-têtes de cookie définis) sont pris en charge.
%p Port canonique du serveur qui traite la requête.
%P La partition d’administration.
%q Chaîne de requête (préfixée par un point d’interrogation (?) s’il existe une chaîne de requête).
%r Première ligne de la demande.
%s Les demandes qui ont été redirigées en interne, il s’agit de l’état de la demande d’origine.
%t Heure, au format de journal commun (format d’heure anglais standard).
% {format} t L’heure, sous la forme donnée par format, doit être au format strftime (3). Pour la description des formats, voir Définition du format temporel.
%T Temps nécessaire pour traiter la demande, en secondes.
%u Utilisateur distant (depuis auth ; peut être bidon si l’état de retour (%s) est 401).
%U Chemin de l’URL demandé.
%v Nom canonique du serveur qui traite la requête.
%V6 Adresse IPv6 du serveur virtuel dans le système, si l’équilibrage de charge, la commutation de contenu et/ou la redirection de cache sont utilisés.
%D Imprime l’ID de transaction HTTP.
%L Durée de la transaction en millisecondes.
%R Chaîne de motif HTTP mappée au code d’état.
%f Journalisation du port source.
%V Adresse IPv4 du serveur virtuel.

Remarque

Pour obtenir des instructions sur la façon d’exporter des en-têtes HTTP personnalisés, reportez-vous à Configuration de Citrix ADC for Web Server Logging.

Par exemple, si vous définissez le format de journal comme %+{user-agent}iet si la valeur de l’agent utilisateur est Client Web du système Citrix ADC, les informations sont consignées en tant que système Citrix ADC+Web+client. Une alternative consiste à utiliser des guillemets doubles. Par exemple, “%{user-agent}i” le consigne comme “Citrix ADC system Web Client.” N’utilisez pas la touche \<Esc\> sur les chaînes de caractères %.. .r, %. . .i et, %. . .o. Il est conforme aux exigences du format de journal commun. Les clients peuvent insérer des caractères de contrôle dans le journal. Par conséquent, vous devez faire attention lorsque vous travaillez avec des fichiers journaux bruts.

Définition du format temporel

Le tableau suivant décrit la définition du format d’heure pour connaître la partie format de la chaîne %{format}t décrite dans le tableau Format de journal personnalisé. Les valeurs entre crochets ([ ]) indiquent la plage de valeurs qui apparaît. Par exemple, [1,31] dans la description de %d dans le tableau suivant indique que %d varie de 1 à 31.

| Argument | Spécifie | | ———— | ———- | | %% | Identique à %. | | %a | Nom abrégé du jour de la semaine pour les paramètres régionaux. | | %A | Le nom complet du jour de la semaine pour les paramètres régionaux | | %b | Le nom abrégé du mois pour les paramètres régionaux. | | %B | Le nom complet du mois pour la langue. | | %C | Le nombre du siècle (l’année divisée par 100 et tronquée à un nombre entier sous la forme d’un nombre décimal [1,99]) ; les chiffres uniques sont précédés d’un 0.| | %d | Champ défini par l’utilisateur. | | %K | Le nombre du siècle (l’année divisée par 100 et tronquée à un nombre entier sous la forme d’un nombre décimal [1,99]) ; les chiffres uniques sont précédés d’un 0.| | %e | Le jour du mois [1,31] ; les chiffres uniques sont précédés d’un blanc. | | %h | Le nom abrégé du mois pour les paramètres régionaux. | | %H |L’heure (24 heures) [0,23] ; les chiffres uniques sont précédés d’un 0. | | %I | L’heure (horloge de 12 heures) [1,12] ; les chiffres uniques sont précédés d’un 0.| | %j | Le numéro du jour de l’année [1,366] ; les chiffres uniques sont précédés de 0. | | %k | L’heure (24 heures) [0,23] ; les chiffres uniques sont précédés d’un blanc. | | %l | L’heure (horloge de 12 heures) [1,12] ; les chiffres uniques sont précédés d’un blanc. | | %m | Le numéro du mois de l’année [1,12] ; les chiffres uniques sont précédés d’un 0. | | %M |Minute [00,59] ; 0 en début de ligne est autorisé mais non obligatoire.| | %n | Insère une nouvelle ligne. | | %p | L’équivalent du matin ou de l’après-midi pour les paramètres régionaux. | | %r | La représentation horaire appropriée au format 12 heures avec %p| | %S | Les secondes [00,61] ; la plage de valeurs est [00,61] plutôt que de [00,59] permettre la seconde intercalaire occasionnelle et la seconde intercalaire double. | | %3 | Les millisecondes [000,999] ; la plage de valeurs est [000,999]. | | 6 % | Les microsecondes [000000,999999] ; la plage de valeurs est [000000,999999]. | | %9 | Les nanosecondes [000000000,999999999] ; la plage de valeurs est [000000000,999999999]. | | %t | Insère une tabulation. | | %u | Le jour de la semaine sous forme de nombre décimal [1,7]. 1 représente Dimanche, 2 représente mardi et ainsi de suite. | | %U | Le numéro de la semaine de l’année sous forme de nombre décimal [00,53], le dimanche étant le premier jour de la semaine 1. |

Remarque :

Si vous spécifiez une conversion qui ne correspond à aucune des conversions décrites dans le tableau précédent ou à l’une des spécifications de conversion modifiées répertoriées dans le paragraphe suivant, le comportement est indéfini et renvoie 0.

La différence entre %U et %W (ainsi qu’entre les conversions modifiées %OU et %OW) est le jour considéré comme le premier jour de la semaine. La semaine numéro 1 est la première semaine de janvier (commençant par un dimanche pour %U, ou un lundi pour %W). Le numéro de semaine 0 contient les jours précédant le premier dimanche ou lundi de janvier pour %U et %W.

Afficher les journaux du serveur

Vous pouvez configurer une fonctionnalité NSWL pour afficher les journaux du serveur sur la console ou rediriger les journaux du serveur vers un répertoire de l’appliance Citrix ADC.

Il existe deux façons d’afficher les journaux sur la console (sortie standard) : Option 1 : Afficher tous les journaux sur la console. Option 2 : Afficher uniquement les journaux sélectionnés sur la console avec des filtres avec logfilenameformat comme STDOUT.