Artikel-id: 820729 - Visa produkter som artikeln gäller.
Visa alla | Dölj alla

På den här sidan

Sammanfattning

I den här artikeln beskrivs funktionerna för felloggning i HTTP API:er.

Vissa fel som uppstår i ett HTTP-baserat program hanteras automatiskt av HTTP-API:t i stället för att skickas tillbaka till programmet för hantering. Det görs för att frekvensen hos sådana fel i annat fall kanske gör att händelseloggen eller programhanteraren svämmar över.

I följande ämnen beskrivs de olika aspekterna av felloggning i HTTP-API.
  • Konfigurera felloggning i HTTP-API
    Registerinställningar styr loggfelen i HTTP-API, den högsta tillåtna storleken på loggfilerna och platsen för loggfilerna.
  • Format för felloggarna i HTTP-API
    I HTTP-API:t skapas loggfiler som uppfyller W3C-loggfilskonventionerna (World Wide Web Consortium). Du kan använda standardverktyg för att tolka loggfilerna. Till skillnad från W3C-loggfilerna innehåller loggfilerna i HTTP-API:t dock inte kolumnnamn.
  • Typer av fel som loggas i HTTP-API
    I HTTP API loggas många vanliga fel.

Mer Information

Konfigurera felloggning i HTTP-API

Om du vill att vi ska konfigurera felloggning i HTTP-API går du till avsnittet Lös det åt mig. Om du hellre vill konfigurera felloggningen i HTTP-API själv går du till avsnittet Jag löser det själv.

Lös det åt mig



Om du vill att problemet ska åtgärdas automatiskt klickar du på knappen eller länken Fix it. Klicka sedan på Kör i dialogrutan Filhämtning och följ anvisningarna i Fix it-guiden.

Inaktivera felloggning i HTTP-API
Microsoft Fix it 50635
Aktivera felloggning i HTTP-API
Microsoft Fix it 50634


Obs!
  • Den här guiden finns eventuellt bara på engelska. Den automatiska korrigeringsfilen fungerar dock även för andra språkversioner av Windows.
  • Om du inte sitter vid datorn där problemet finns kan du spara Fix it-lösningen på ett flashminne eller en cd och sedan köra den på rätt dator.



Jag löser det själv

Tre registervärden under nyckeln HTTP \Parameters styr felloggningen i HTTP-API. Nycklarna finns i följande registernyckel:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Obs! Platsen och formen för konfigurationsvärdena kan ändras i senare versioner av operativsystemet Windows.

Du måste ha autentiseringsuppgifter för administratör/det lokala systemet för att ändra registervärdena och för att visa eller ändra loggfilerna och mappen som innehåller loggfilerna.

Konfigurationsinformation i registervärdena läses in när drivrutinen för HTTP-API startar. Därför måste du, om du ändrar inställningarna, avbryta och sedan starta om drivrutinen för att de nya värdena ska läsas in. Skriv i så fall följande konsolkommandon:
net stop http
net start http
Följande namnkonvention används för att döpa loggfilerna:
httperr + sekvensnummer + .log
Ett exempel: httperr4.log
Loggfilerna roteras när de når den högsta tillåtna storleken som anges av registervärdet ErrorLogFileTruncateSize. Värdet kan inte vara mindre än 1 megabyte (MB).

Om felloggningskonfigurationen inte är giltig eller om någon annan typ av fel inträffar medan HTTP-API:t skriver i loggfilerna använder HTTP-API:t händelseloggning för att meddela administratörerna att felloggning inte sker.

I följande tabell beskrivs registerkonfigurationsvärdena.
Dölj tabellenVisa tabellen
RegistervärdeBeskrivning
EnableErrorLoggingEtt DWORD-värde som du kan ställa in på TRUE för att aktivera felloggning eller FALSE för att inaktivera det. Standardvärdet är TRUE.
ErrorLogFileTruncateSizeEtt DWORD-värde som anger högsta tillåtna storlek på en felloggfil, anges i byte. Standardvärdet är 1 MB (0x100000).

Obs! Det angivna värdet kan inte vara mindre än standardvärdet.
ErrorLoggingDirEn sträng som anger mappen där HTTP-API placerar sina loggfiler.

HTTP-API skapar undermappen HTTPERR i den angivna mappen och sparar sedan loggfilerna i undermappen. Undermappen och loggfilerna får samma behörighetsinställningar. Administratörskontot och kontot för det lokala systemet får fullständig åtkomst. Andra användare får inte åtkomst.

Följande är standardmappen när mapp inte anges i registret:
%SystemRoot%\System32\LogFiles

Obs! Strängvärdet ErrorLoggingDir måste vara en fullt giltig lokal sökväg. Det kan dock innehålla %SystemRoot%. En nätverksenhet eller nätverksresurs får inte användas.

Format för felloggarna i HTTP-API

I allmänhet har felloggarna i HTTP-API samma format som W3C-felloggarna, förutom att felloggarna i HTTP-API inte innehåller kolumnrubriker. Varje rad i en HTTP-API-fellogg innehåller ett fel. Fälten visas i en viss ordning. Ett enkelt blanksteg (0x0020) skiljer ett fält från föregående fält. I varje fält ersätter plustecknen (0x002B) blanksteg, tabbar och icke-utskrivbara kontrolltecken.

I följande tabell anges fälten och ordningen för fälten i en felloggspost.
Dölj tabellenVisa tabellen
FältBeskrivning
DatumDatumfältet följer W3C-formatet. Fältet baseras på UTC-tid (Coordinated Universal Time). Datumfältet innehåller alltid 10 tecken enligt formatet ÅÅÅÅ-MM-DD. Exempel: 1 maj 2003 skrivs 2003-05-01.
TidTidsfältet följer W3C-formatet. Fältet baseras på UTC-tid. Tidsfältet innehåller alltid 8 tecken enligt formatet MM:HH:SS. Exempel: 5:30 PM (UTC) skrivs 17:30:00.
Klientens IP-adressDen berörda klientens IP-adress. Värdet i fältet kan vara antingen en IPv4-adress eller en IPv6-adress. Om klientens IP-adress är en IPv6-adress ingår fältet Scopeld också i adressen.
KlientportDen berörda klientens portnummer.
Serverns IP-adressDen berörda serverns IP-adress. Värdet i fältet kan vara antingen en IPv4-adress eller en IPv6-adress. Om serverns IP-adress är en IPv6-adress ingår fältet Scopeld också i adressen.
ServerportDen berörda serverns portnummer.
ProtokollversionProtokollversionen som används.

Om anslutningen inte har tolkats tillräckligt för att kunna fastställa protokollversionen används ett bindestreck (0x002D) som platshållare för det tomma fältet.

Om antingen det högre versionsnumret eller det lägre versionsnumret tolkas som större än eller lika med 10 loggas versionen som HTTP/?.?.
VerbVerb innebär att den senaste begäran som tolkades godkänns. Okända verb tas med, men verb som är mer än 255 byte trunkeras till denna längd. Om ett verb inte är tillgängligt används ett bindestreck (0x002D) som platshållare för det tomma fältet.
CookedURL + frågaURL och frågor som associeras med detta loggas som ett fält som åtskiljs med ett frågetecken (0x3F). Fältet trunkeras med en längdbegränsning på 4 096 byte.

Om URL-adressen har tolkats ("cooked") loggas den med konverteringen i den lokala teckentabellen och hanteras som ett Unicode-fält.

Om URL-adressen inte har tolkats ("cooked") vid tidpunkten för loggningen kopieras den exakt, utan någon Unicode-konvertering.

Om HTTP-API inte kan tolka URL-adressen används ett bindestreck (0x002D) som platshållare för det tomma fältet.
ProtokollstatusProtokollstatus kan inte vara större än 999.

Om protokollstatus för svar på en begäran är tillgängligt loggas det i det här fältet.

Om protokollstatus inte är tillgängligt används ett bindestreck (0x002D) som platshållare för det tomma fältet.
SiteIdAnvänds inte i den här versionen av HTTP-API. Ett platshållarbindestreck (0x002D) visas alltid i det här fältet.
OrsaksfrasFältet innehåller en sträng som anger vilken typ av fel som loggas. Fältet lämnas aldrig tomt.
KönamnDetta är könamn för begäran.
Följande exempelrader är hämtade från en fellogg i HTTP-API:
2002-07-05 18:45:09 172.31.77.6 2094 172.31.77.6 80 HTTP/1.1 GET /qos/1kbfile.txt 503 ? ConnLimit 2002-07-05 19:51:59 127.0.0.1 2780 127.0.0.1 80 HTTP/1.1 GET /ThisIsMyUrl.htm 400 ? Hostname 2002-07-05 19:53:00 127.0.0.1 2894 127.0.0.1 80 HTTP/2.0 GET / 505 - Version_N/S 2002-07-05 20:06:01 172.31.77.6 64388 127.0.0.1 80 - - - - - Timer_MinBytesPerSecond

Typer av fel som loggas i HTTP-API

I HTTP-API loggas felsvar till klienter, timeout för anslutningar, övergivna begäranden och avbrutna anslutningar som hanteras felaktigt.

I följande lista anges vilka typer av fel som loggas i HTTP-API:
  • Svar till klienter HTTP-API skickar ett felsvar till en klient, till exempel ett 400-fel som orsakas av ett tolkningsfel i den senast mottagna begäran. När HTTP-API har skickat felsvaret avslutas anslutningen.
  • Timeout för anslutningar HTTP-API avbryter en anslutning på grund av timeout. Om en begäran väntar när anslutningen avbryts på grund av timeout används begäran för att få mer information om anslutningen i felloggen.
  • Övergivna begäranden En process i användarläge avbryts oväntat när det fortfarande finns andra begäranden i kö som dirigeras till den processen. HTTP-API loggar de övergivna begärandena i felloggen.
Särskilda feltyper betecknas som strängen Orsaksfras och visas alltid som sista fält i varje felrad. I följande tabell anges orsaksfraserna i HTTP-API.
Dölj tabellenVisa tabellen
OrsaksfrasBeskrivning

AppOfflineFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom programfel gjorde så att programmet kopplades från.
AppPoolTimerFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom programmets poolprocess är för upptagen för att hantera begäran.
AppShutdownFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom programmet automatiskt stoppats som svar på en administratörsprincip.
BadRequestEtt tolkningsfel inträffade när begäran bearbetades.
Client_ResetAnslutningen mellan klienten och servern har stängts innan begäran kunde tilldelas en jobbprocess. Den vanligaste orsaken till detta är att klienten stoppar sin anslutning till servern för tidigt.
Connection_Abandoned_By_AppPoolEn jobbprocess från programpoolen har avbrutits oväntat eller övergett en väntande begäran genom att stänga referensen.
Connection_Abandoned_By_ReqQueueEn jobbprocess från programpoolen har avbrutits oväntat eller övergett en väntande begäran genom att stänga referensen. Specifikt för Windows Vista och senare versioner av Windows Server 2008 och senare versioner.
Connection_DroppedAnslutningen mellan klient och server har stängts innan servern hann skicka det slutliga svarspaketet. Den vanligaste orsaken till detta är att klienten stoppar sin anslutning till servern för tidigt.
Connection_Dropped_List_FullListan med avbrutna anslutningar mellan klient och server är full. Specifikt för Windows Vista och senare versioner av Windows Server 2008 och senare versioner.
ConnLimitFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom anslutningsgränsen för webbplatsnivån har uppnåtts eller överskridits.
Connections_RefusedKernel-minnet NonPagedPool har fallit under 20 MB och http.sys har slutat att ta emot nya anslutningar
InaktiveradFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom en administratör har kopplat från programmet.
EntityTooLargeEn enhet har överskridit den högsta tillåtna storleken.
FieldLengthGränsen för fältlängd har överskridits.
FörbjudenEtt förbjudet element eller en förbjuden sekvens upptäcktes vid tolkningen.
HuvudEtt tolkningsfel uppstod i ett huvud.
VärdnamnEtt tolkningsfel uppstod när Värdnamn bearbetades.
InternDet uppstod ett internt serverfel (HTTP-fel 500).
Invalid_CR/LFEn ogiltig vagnretur eller radmatning har inträffat.
LengthRequiredEtt obligatoriskt värde för längd saknas.
SaknasFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig på grund av ett internt serverfel (till exempel fel i minnesallokeringen eller en konflikt i URL-reservationslistan).
Ej implementeratFelet ej implementerat uppstod (HTTP-fel 501), eller felet tjänsten är inte tillgänglig uppstod (HTTP-fel 503) på grund av en okänd överföringskodning.
NummerEtt tolkningsfel uppstod när ett nummer bearbetades.
FörhandsvillkorEtt obligatoriskt förhandsvillkor saknas.
QueueFullFelet tjänsten är inte tillgänglig inträffade (HTTP-fel 503). Tjänsten är inte tillgänglig eftersom kön för programbegäranden är full.
RequestLengthGränsen för begärandelängd har överskridits.
Timer_AppPoolAnslutningen har upphört eftersom en begäran väntat för länge i en programpoolskö på att ett serverprogram skulle ta begäran ur kön och bearbeta den. Varaktigheten för timeout är ConnectionTimeout. Standardvärdet för det här värdet är 2 minuter.
Timer_ConnectionIdleAnslutningen har upphört och är i viloläge. Standardvaraktigheten för ConnectionTimeout är 2 minuter.
Timer_EntityBodyAnslutningen har upphört innan begärans enhetstext kommit fram. När det står klart att en begäran innehåller enhetstext aktiverar HTTP-API timern Timer_EntityBody. Inledningsvis är gränsen för timern inställd på värdet ConnectionTimeout (vanligtvis 2 minuter). Varje gång en till dataindikering tas emot i begäran ställer HTTP-API tillbaka timern så att anslutningen får ytterligare 2 minuter (eller det värde som anges i ConnectionTimeout).
Timer_HeaderWaitAnslutningen har upphört eftersom huvudet som tolkar begäran dröjde längre än standardgränsen på 2 minuter.
Timer_MinBytesPerSecondAnslutningen har upphört eftersom klienten inte tagit emot ett svar i en rimlig hastighet. Svarshastigheten för att skicka var långsammare än standardhastigheten på 240 byte/s. Det kan kontrolleras med metabasegenskapen MinFileBytesPerSec.
Timer_ReqQueueAnslutningen har upphört eftersom en begäran väntat för länge i en programpoolskö på att ett serverprogram skulle ta begäran ur kön. Varaktigheten för timeout är ConnectionTimeout. Standardvärdet för det här värdet är 2 minuter. Specifikt för Windows Vista och senare versioner av Windows Server 2008 och senare versioner.
Timer_ResponseFörbehåll. Används inte för närvarande.
Timer_SslRenegotiation Anslutningen har upphört eftersom SSL-omförhandlingen mellan klient och server dröjde längre än standardtimeouten på 2 minuter.
URLEtt tolkningsfel uppstod när URL bearbetades.
URL_LengthEn URL-adress har överskridit den högsta tillåtna storleken.
VerbEtt tolkningsfel uppstod när ett verb bearbetades.
Version_N/SFelet versionen stöds inte inträffade (HTTP-fel 505).

Referenser

Om du vill veta mer om att lägga till ytterligare loggningsfält för IIS HTTP-felloggning klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:
832975 Ytterligare egenskaper är nu tillgängliga för loggning i filen Httperr#.log i IIS 6.0 och IIS 7.0
Obs! Det här är en "FAST PUBLISH?-artikel som skapats direkt inom Microsofts supportorganisation. Informationen i artikeln tillhandahålls i befintligt skick för att besvara framtida frågor. På grund av den snabba framtagningen kan materialet innehålla typografiska fel och kan utan förvarning när som helst komma att omarbetas. Se användarvillkoren för andra hänsynstaganden.

Egenskaper

Artikel-id: 820729 - Senaste granskning: den 26 februari 2014 - Revision: 3.0
Informationen i denna artikel gäller:
  • Windows Server 2012 Standard
  • Windows 8
  • Windows 8 Pro
  • Windows 8 Enterprise
  • Windows 7 Professional
  • Windows 7 Enterprise
  • Windows Server 2008 R2 Standard
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 Enterprise
  • Windows Vista Enterprise
  • Windows Vista Ultimate
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86)
  • Microsoft Windows Server 2003 R2 Standard Edition (64-Bit x86)
  • Microsoft Windows Server 2003 R2 Enterprise Edition (64-Bit x86)
Nyckelord: 
kbhttphandlers kbhttp kbapi kberrmsg kbinfo kbfixme kbmsifixme KB820729

Ge feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com