Vous pouvez configurer vos sites Web ou FTP pour enregistrer dans un journal les informations relatives à l'activité des utilisateurs et du serveur. Les données du journal IIS peuvent vous aider à moduler l'accès à vos sites, à déterminer la popularité de vos sites, à planifier les besoins en matière de sécurité et à dépanner les éventuels problèmes sur vos sites Web ou FTP. Vous ne devez pas confondre l'enregistrement de l'activité des sites IIS dans un journal et l'enregistrement des événements effectué par Windows 2000 et affiché à l'aide de l'Observateur d'événements. L'enregistrement dans le journal IIS est plus complet. Les sections suivantes décrivent l'enregistrement dans le journal IIS :
L'enregistrement de l'activité d'un site Web ou FTP dans un journal est réalisé par des modules fonctionnant indépendamment des autres activités du serveur. Vous pouvez choisir le format de vos fichiers journaux pour chaque site Web ou FTP. Si l'enregistrement est activé pour un site, vous pouvez le désactiver ou l'activer sur des répertoires donnés de ce site. Pour connaître la procédure d'activation ou de désactivation de l'enregistrement pour des sites ou des répertoires, consultez Activation de l'enregistrement dans le journal .
Les fichiers journaux créés par IIS peuvent être lus dans un éditeur de texte mais, en règle générale, ils sont chargés dans un outil logiciel de génération de rapports. L'enregistrement ODBC est réalisé dans une base de données qui peut être utilisée pour générer des rapports. Les fichiers journaux de comptabilisation des processus sont mêlés aux fichiers journaux W3C étendus normaux pour chaque site Web.
Les différents formats de fichiers journaux utilisent différents fuseaux horaires en tant que base pour les heures figurant dans les fichiers journaux. Le format W3C étendu utilise l'UTC (Universal Time Coordinate), anciennement appelée GMT (Greenwich Mean Time). Les autres formats utilisent l'heure locale. Les heures figurant dans les fichiers journaux correspondent au temps mis par le serveur pour traiter les demandes et les réponses. Elles ne prennent pas en compte le temps nécessaire à la transmission réseau vers le client, ni le temps de traitement côté client.
Vous pouvez choisir le format utilisé par votre serveur Web pour enregistrer l'activité de l'utilisateur. Les formats disponibles sont les suivants :
Les formats de fichiers journaux W3C étendu, Microsoft IIS et NCSA sont des formats texte ASCII. Les formats W3C étendu et NCSA enregistrent les données en utilisant quatre chiffres pour les années. Le format Microsoft IIS n'utilise que deux chiffres pour les années et est compatible avec les versions antérieures de IIS. Vous pouvez également créer des formats d'enregistrement personnalisés avec les champs que vous souhaitez.
Le format W3C étendu est un format ASCII personnalisable qui utilise de nombreux champs. Vous pouvez inclure des champs qui vous semblent importants, tout en limitant la taille du journal en éliminant les champs qui ne sont pas nécessaires. Les champs sont séparés par des espaces. Le temps est enregistré en fonction de l'heure UTC (GMT). Pour plus d'informations sur la personnalisation de ce format, consultez Personnalisation du journal W3C étendu. Pour plus d'informations sur la spécification du format W3C étendu, consultez le site W3C à l'adresse suivante : http://www.w3.org.
L'exemple ci-dessous présente les lignes d'un fichier utilisant les champs suivants : Heure, Adresse IP du client, Méthode, Ressource URI, État HTTP et Version HTTP.
#Software: Microsoft Internet Information Services 5.0 #Version: 1.0 Date 1998-05-02 17:42:15 #Fields: time c-ip cs-method cs-uri-stem sc-status cs-version 17:42:15 172.16.255.255 GET /default.htm 200 HTTP/1.0
Cette entrée indique que le 2 mai 1998 à 17h42, un utilisateur disposant de HTTP version 1.0 et dont l'adresse IP est 172.16.255.255 a lancé une commande HTTP GET pour le fichier Default.htm. La demande est revenue sans erreur. Le champ #Date: indique la date à laquelle la première entrée de journal a été effectuée. Cette date correspond à la création du fichier journal. Le champ #Version: indique que le format de fichier journal W3C est utilisé.
Tous les champs peuvent être sélectionnés, mais certains champs peuvent ne contenir aucune information pour certaines demandes. Les champs sélectionnés ne comportant aucune information affichent un tiret () comme marque de réservation.
Le format Microsoft IIS est un format ASCII fixe (c'est-à-dire qu'il n'est pas personnalisable). Il enregistre un plus grand nombre d'éléments d'informations que le format NCSA commun. Le format Microsoft IIS comprend des éléments de base comme l'adresse IP de l'utilisateur, le nom d'utilisateur, la date et l'heure de la demande, le code d'état HTTP et le nombre d'octets reçus. Il contient également des éléments détaillés comme le temps écoulé, le nombre d'octets envoyés, l'action effectuée (par exemple, un téléchargement via une commande GET) et le fichier cible. Les éléments sont séparés par des virgules, ce qui rend l'analyse du format plus simple par rapport aux autres formats ASCII, qui utilisent les espaces. L'heure est enregistrée en tant qu'heure locale.
Lorsque vous ouvrez un fichier au format Microsoft IIS dans un éditeur de texte, les entrées sont analogues aux exemples suivants :
192.168.114.201,
, 03/20/98, 7:55:20, W3SVC2, VENTES1, 192.168.114.201, 4502, 163, 3223, 200, 0, GET, DeptLogo.gif
172.16.255.255, anonymous, 03/20/98, 23:58:11, MSFTPSVC, VENTES1, 192.168.114.201, 60, 275, 0, 0, 0, PASS, intro.htm
Ces exemples d'entrées sont interprétés dans les tableaux ci-dessous. La ligne supérieure des deux tableaux correspond à la deuxième instance de site Web (identifiée dans la colonne « Service » par W3SVC2) ; la ligne inférieure correspond à la première instance de site FTP (identifiée dans la colonne « Service » par MSFTPSVC1). L'exemple est affiché dans deux tableaux en raison de la largeur limitée de la page.
Adresse IP de l'utilisateur | Nom d'utilisateur | Date | Heure | Service et instance | Nom de l'ordinateur | Adresse IP du serveur |
---|---|---|---|---|---|---|
192.168.114.201 |
| 03/20/98 |
7:55:20 |
W3SVC2 |
VENTES1 |
172.21.13.45 |
172.16.255.255 |
anonymous |
03/20/98 |
23:58:11 |
MSFTPSVC1 |
VENTES1 |
172.21.13.45 |
Temps écoulé | Octets reçus | Octets envoyés | Code d'état du service | Code d'état de Windows 2000 | Type de demande | Cible de l'opération |
---|---|---|---|---|---|---|
4502 |
163 |
3223 |
200 |
0 |
GET |
DeptLogo.gif |
60 |
275 |
0 |
0 |
0 |
[376] PASS |
intro |
Dans l'exemple précédent, la première entrée indique qu'un utilisateur anonyme dont l'adresse IP est 192.168.114.201 a lancé une commande HTTP GET pour le fichier d'image DeptLogo.gif à 7h55, le 20 mars 1998, à partir d'un serveur nommé VENTES1 dont l'adresse IP est 172.21.13.45. La demande HTTP de 163 octets a eu une durée de traitement de 4 502 millisecondes (4,5 secondes) et elle a renvoyé, sans erreur, 3 223 octets de données à l'utilisateur anonyme.
Dans le fichier journal, tous les champs se terminent par une virgule (,). Un trait d'union est interprété comme une marque de réservation si aucune valeur valide n'est disponible pour un champ particulier.
Le format NCSA commun est un format ASCII fixe (c'est-à-dire qu'il n'est pas personnalisable) disponible pour les sites Web, mais pas pour les sites FTP. Il enregistre des informations de base sur les demandes des utilisateurs, telles que le nom d'hôte distant, le nom d'utilisateur, la date, l'heure, le type de demande, le code d'état HTTP et le nombre d'octets reçus par le serveur. Les différents éléments sont séparés par des espaces et l'heure est enregistrée en fonction de l'heure locale.
Lorsque vous ouvrez un fichier au format NCSA commun dans un éditeur de texte, les entrées sont analogues à l'exemple suivant :
172.21.13.45
REDMOND\fred [08/Apr/1997:17:39:04 -0800] "GET /scripts/iisadmin/ism.dll?http/serv HTTP/1.0" 200 3401
Remarque Dans l'entrée qui précède, le second champ (qui devrait indiquer le nom d'ouverture de session à distance de l'utilisateur) est vide et est indiqué par le trait d'union qui suit l'adresse IP 172.21.13.45.
Cet exemple d'entrée est interprété dans les tableaux suivants. L'exemple est affiché dans deux tableaux en raison de la largeur limitée de la page.
Nom d'hôte distant | Nom d'utilisateur | Date | Heure et décalage par rapport à l'heure GMT |
---|---|---|---|
172.21.13.45 |
REDMOND\fred |
08/Apr/1998 |
17:39:10 -0800 |
Type de demande | Code d'état du service | Octets envoyés |
---|---|---|
GET /scripts/iisadmin/ism.dll?http/serv HTTP/1.0 |
200 |
3401 |
L'entrée indique que l'utilisateur nommé Fred appartenant au domaine REDMOND, et dont l'adresse IP est 172.21.13.45, a lancé une commande HTTP GET (c'est-à-dire a téléchargé un fichier) à 17h39, le 8 avril 1998. La demande a renvoyé, sans erreur, 3 401 octets de données à l'utilisateur nommé Fred.
Le format d'enregistrement ODBC enregistre un ensemble fixe de champs de données dans une base de données compatible ODBC, comme Microsoft Access ou Microsoft SQL Server. Il enregistre des informations telles que l'adresse IP de l'utilisateur, le nom d'utilisateur, la date et l'heure de la demande, le code d'état HTTP, les octets reçus, les octets envoyés, l'action effectuée (par exemple, un téléchargement effectué via une commande GET) et la cible (par exemple, le fichier téléchargé). L'heure est enregistrée en tant qu'heure locale. Avec cette option, vous devez indiquer la base de données dans laquelle doit se faire l'enregistrement, puis la configurer de manière à ce qu'elle puisse recevoir les données.
Pour utiliser l'enregistrement ODBC, vous devez effectuer les étapes suivantes :
Nom du champ | Type de champ |
ClientHost | Texte(255) |
Username | Texte(255) |
LogTime | Date/heure |
Service | Texte(255) |
Machine | Texte(255) |
ServerIP | Texte(50) |
ProcessingTime | Numérique |
BytesRecvd | Numérique |
BytesSent | Numérique |
ServiceStatus | Numérique |
Win32Status | Numérique |
Operation | Texte(255) |
Target | Texte(255) |
Parameters | Texte(255) |
La comptabilisation des processus est une nouvelle fonctionnalité de IIS. Elle ajoute des champs dans le fichier journal W3C étendu pour enregistrer des informations sur l'utilisation par les sites Web des ressources processeur du serveur. Ces informations permettent de déterminer si les sites Web utilisent une part trop importante des ressources processeur et de détecter tout dysfonctionnement des scripts ou des processus CGI.
La comptabilisation des processus peut être activée au niveau du site. Elle ne fournit pas de détails sur l'utilisation processeur pour chaque application et enregistre des informations uniquement sur les applications hors processus. Elle est disponible uniquement pour les sites Web, si le format de fichier journal W3C étendu est sélectionné. Les informations de comptabilisation des processus sont mêlées à d'autres informations de journal dans le fichier. Pour connaître la procédure permettant d'activer la comptabilisation des processus, consultez Suivi de l'utilisation du processeur.
Les informations obtenues par la comptabilisation des processus permettent de déterminer si la limitation des processus doit être activée sur un site Web donné. La limitation des processus permet de limiter le temps processeur attribué à un site Web. Pour plus d'informations, consultez À propos de l'utilisation du processeur.
Si l'enregistrement dans le journal IIS est activé (il l'est par défaut), de nouvelles entrées de journal sont générées dès que des utilisateurs accèdent au serveur. Cela entraîne une augmentation progressive de la taille des fichiers journaux ou du nombre de fichiers journaux. Il peut être utile de trouver le juste équilibre entre la collecte de données détaillées et le besoin de limiter le nombre et la taille des fichiers à un niveau gérable. IIS propose deux options permettant de contrôler la génération de données journal et la création de nouveaux fichiers journaux.
Une méthode pour gérer les données journal consiste à utiliser l'enregistrement W3C étendu et à le personnaliser afin de recueillir uniquement les données dont vous avez besoin. Pour obtenir de l'aide sur la procédure correspondante, consultez Personnalisation du journal W3C étendu. Une autre méthode pour gérer les fichiers journaux consiste à limiter la taille des fichiers en modifiant la fréquence de création de fichiers journaux. Pour plus d'informations sur les options d'intervalle, consultez Enregistrement des fichiers. Lorsque vous sélectionnez une option d'enregistrement, vous devez tenir compte du fait que vous ne pouvez accéder au fichier journal en cours qu'après avoir arrêté le site correspondant.
Les fichiers journaux sont des fichiers ASCII (texte) simples. Si vous avez créé de nombreux petits fichiers et que vous préféreriez avoir un seul grand fichier, vous pouvez combiner ces fichiers comme vous le feriez avec des fichiers ASCII classiques. Pour plus d'informations sur l'utilisation de la commande copy pour combiner des fichiers, tapez copy /? à l'invite de commande.
Si votre serveur vient à manquer d'espace disque alors que IIS essaie d'ajouter une entrée de journal à un fichier, le processus d'enregistrement dans le journal IIS s'arrête. Au même moment, un événement est consigné dans le journal Applications de l'Observateur d'événements de Windows. Dès que de l'espace disque est à nouveau disponible, l'enregistrement dans le journal IIS reprend. Cela entraîne l'écriture d'un autre événement dans le journal Applications de l'Observateur d'événements de Windows.
Dans les noms de fichiers journaux, les premières lettres sont utilisées pour représenter le format du journal et les chiffres restants correspondent au délai ou à la séquence du journal. Pour plus d'informations, consultez le tableau ci-dessous. Les lettres en italiques représentent des chiffres : nn pour les séquences de chiffres, aa pour l'année, mm pour le mois, ss pour la semaine du mois, jj pour le jour et hh pour l'heure avec un format sur 24 heures (17 correspondant à 5 heures de l'après-midi).
Format | Critère de création d'un nouveau fichier journal | Format du nom de fichier |
---|---|---|
Format de fichier journal Microsoft IIS | Par taille de fichier | inetsvnn.log |
Horaire | inaammjjhh.log | |
Quotidienne | inaammjj.log | |
Hebdomadaire | inaammss.log | |
Mensuelle | inaamm.log | |
Format de fichier journal NCSA commun | Par taille de fichier | ncsann.log |
Horaire | ncaammjjhh.log | |
Quotidienne | ncaammjj.log | |
Hebdomadaire | ncaammss.log | |
Mensuelle | ncaamm.log | |
Format de fichier journal W3C étendu | Par taille de fichier | extendnn.log |
Horaire | exaammjjhh.log | |
Quotidienne | exaammjj.log | |
Hebdomadaire | exaammss.log | |
Mensuelle | exaamm.log |