W3C-logboekregistratie
Uitgebreide logboekregistratie van W3C is het type logboekregistratie aan de serverzijde dat kan worden ingeschakeld voor de serversessie of URL-groep. Wanneer W3C-logboekregistratie is ingeschakeld voor een URL-groep, wordt logboekregistratie alleen uitgevoerd voor aanvragen die naar de URL-groep worden gerouteerd. Er wordt een afzonderlijk logboekbestand gemaakt voor elke URL-groep die is geconfigureerd om W3C-logboekregistratie in te schakelen.
Wanneer W3C-logboekregistratie is ingeschakeld op de serversessie, werkt deze als gecentraliseerde vorm van logboekregistratie voor alle URL-groepen onder de serversessie. Er wordt één logboekbestand bijgehouden voor alle URL-groepen in de serversessie.
De volgende tabel bevat de velden die kunnen worden geregistreerd door de HTTP Server-API. De tabel bevat een subset van de HTTP_LOG_FIELD constanten. Sommige van de onderstaande velden worden intern automatisch gegenereerd door de HTTP Server-API en daarom niet opgenomen in de HTTP_LOG_FIELDS_DATA structuur. De kolom 'Wordt weergegeven als' bevat de tekst die in het logboekbestand wordt weergegeven. De gegevens in de tabel bevinden zich in de volgorde van de gebeurtenis in de logboekbestandsrecord.
Velden die niet zijn gemarkeerd als 'HTTP Server-API gegenereerd' moeten worden doorgegeven binnen HTTP_LOG_FIELDS_DATA structuur per toepassing. De toepassing kan deze velden genereren op basis van de HTTP_REQUEST structuur die eraan is doorgegeven.
Veld | Wordt weergegeven als | Beschrijving | HTTP_LOG_FIELDS_DATA lid | constanten HTTP_LOG_FIELDS |
---|---|---|---|---|
Datum | datum | De datum waarop de activiteit heeft plaatsgevonden. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_DATE |
Tijd | Tijd | De tijd, in gecoördineerde universele tijd (UTC), waarop de activiteit heeft plaatsgevonden. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_TIME |
Servicenaam en exemplaarnummer | s-sitename | De internetservicenaam en het exemplaarnummer dat op de client werd uitgevoerd. | ServiceName | HTTP_LOG_FIELD_SITE_NAME |
Servernaam | s-computernaam | De naam van de server waarop de vermelding van het logboekbestand is gegenereerd. | Servernaam | HTTP_LOG_FIELD_COMPUTER_NAME |
IP-adres van server | s-ip | Het IP-adres van de server waarop de vermelding van het logboekbestand is gegenereerd. | ServerIp | HTTP_LOG_FIELD_SERVER_IP |
Methode | cs-method | Het aangevraagde werkwoord, bijvoorbeeld een GET-methode. | Methode | HTTP_LOG_FIELD_METHOD |
URI-stem | cs-uri-stem | Het doel van het werkwoord, bijvoorbeeld Default.htm. | UriStem | HTTP_LOG_FIELD_URI_STEM |
URI-query | cs-uri-query | De query, indien aanwezig, die de client probeerde uit te voeren. Een URI-query (Universal Resource Identifier) is alleen nodig voor dynamische pagina's. | UriQuery | HTTP_LOG_FIELD_URI_QUERY |
Serverpoort | s-port | Het poortnummer van de server dat is geconfigureerd voor de service. | ServerPort | HTTP_LOG_FIELD_SERVER_PORT |
Gebruikersnaam | cs-username | De naam van de geverifieerde gebruiker die toegang heeft tot de server. Anonieme gebruikers worden aangeduid met een afbreekstreepje. | Gebruikersnaam | HTTP_LOG_FIELD_USER_NAME |
IP-adres van client | c-ip | Het IP-adres van de client die de aanvraag heeft ingediend. | ClientIp | HTTP_LOG_FIELD_CLIENT_IP |
Protocolversie | cs-version | De HTTP-protocolversie die de client heeft gebruikt. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_VERSION |
Gebruikersagent | cs(User-Agent) | Het browsertype dat de client heeft gebruikt. | UserAgent | HTTP_LOG_FIELD_USER_AGENT |
Koekje | cs(Cookie) | De inhoud van de cookie die is verzonden of ontvangen, indien van toepassing. | Koekje | HTTP_LOG_FIELD_COOKIE |
Referrer | cs(Referrer) | De site die de gebruiker het laatst heeft bezocht. Deze site heeft een koppeling naar de huidige site opgegeven. | Referrer | HTTP_LOG_FIELD_REFERRER |
Gastheer | cs-host | De naam van de hostheader, indien van toepassing. | Gastheer | HTTP_LOG_FIELD_HOST |
HTTP-status | sc-status | De HTTP-statuscode. | ProtocolStatus | HTTP_LOG_FIELD_STATUS |
Protocolsubstatus | sc-substatus | De foutcode van de substatus. | SubStatus | HTTP_LOG_FIELD_SUB_STATUS |
Win32-status | sc-win32-status | De Windows-statuscode. | Win32Status | HTTP_LOG_FIELD_WIN32_STATUS |
Verzonden bytes | sc-bytes | Het aantal bytes dat door de server is verzonden. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_BYTES_SENT |
Ontvangen bytes | cs-bytes | Het aantal bytes dat door de server is ontvangen en verwerkt. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_BYTES_RECV |
Tijd die nodig is | tijd die nodig is | De tijdsduur die de actie heeft ondernomen, in milliseconden. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_TIME_TAKEN |
Stream-id | streamid | De stream-id. | HTTP Server-API gegenereerd. | HTTP_LOG_FIELD_STREAM_ID |
Het logboekbestand is een aanpasbare indeling op basis van ASCII-tekst. De veldvoorvoegsels in het bestand zijn als volgt gedefinieerd:
Voorvoegsel | Beschrijving |
---|---|
s | Serveracties. |
c | Clientacties. |
Sc | Server-naar-clientacties. |
Cs | Client-naar-server-acties. |
De toepassing kan een of meer van de W3C Extended-logboekbestandsvelden selecteren, maar niet alle velden bevatten informatie. Voor velden die zijn geselecteerd, maar waarvoor geen informatie is, wordt een afbreekstreepje (-) weergegeven als tijdelijke aanduiding. Als een veld een niet-afdrukbaar teken bevat, vervangt de HTTP Server-API dit door een plusteken (+) om de bestandsindeling van het logboek te behouden. Dit treedt meestal op bij virusaanvallen, wanneer bijvoorbeeld een kwaadwillende gebruiker regelterugloop en regelfeeds verzendt die, indien niet vervangen door het plusteken (+), de indeling van het logboekbestand zou verbreken. Velden worden gescheiden door spaties.
Als een veld is ingeschakeld door de URL-groep of serversessie, maar niet is geselecteerd voor de aanvraag, wordt dit weergegeven in het logboekbestand met een afbreekstreepje (-) als tijdelijke aanduiding.
Logboekbestanden worden gemaakt wanneer de eerste aanvraag binnenkomt in de URL-groep of serversessie. Ze worden niet gemaakt wanneer logboekregistratie is geconfigureerd. In het volgende voorbeeld ziet u de eerste vermelding van het logboekbestand voor een W3C-logboekbestand met de velden Client-IP, Gebruikersnaam, Server-IP, Serverpoort, Methode, URI-stem, URI-query, Status en Gebruikersagent ingeschakeld:
#Software: Microsoft HTTP Server API 2.0
#Version: 1.0 // the log file version as it's described by "https://www.w3.org/TR/WD-logfile".
#Date: 2002-05-02 17:42:15 // when the first log file entry was recorded, which is when the entire log file was created.
#Fields: date time c-ip cs-username s-ip s-port cs-method cs-uri-stem cs-uri-query sc-status cs(User-Agent)
2002-05-02 17:42:15 172.22.255.255 - 172.30.255.255 80 GET /images/picture.jpg - 200 Mozilla/4.0+(compatible;MSIE+5.5;+Windows+2000+Server)
Het tijdgebonden veld wordt geïnitialiseerd wanneer de HTTP Server-API de eerste byte ontvangt voordat de aanvraag wordt geparseerd. De tijdstempel wordt gestopt wanneer de laatste verzendbewerking plaatsvindt. De tijd die nodig is, weerspiegelt geen tijd in het netwerk. De eerste aanvraag voor de site geeft een iets langere tijd aan dan andere vergelijkbare aanvragen, omdat de HTTP Server-API het logboekbestand met de eerste aanvraag opent.