Protokolování chyb v rozhraní API protokolu HTTP

DŮLEŽITÉ: Tento článek je přeložen pomocí softwaru na strojový překlad Microsoft. Nepřesný či chybný překlad lze opravit prostřednictvím technologie Community Translation Framework (CTF). Microsoft nabízí strojově přeložené, komunitou dodatečně upravované články, a články přeložené lidmi s cílem zajistit přístup ke všem článkům v naší znalostní bázi ve více jazycích. Strojově přeložené a dodatečně upravované články mohou obsahovat chyby ve slovníku, syntaxi a gramatice. Společnost Microsoft není odpovědná za jakékoliv nepřesnosti, chyby nebo škody způsobené nesprávným překladem obsahu nebo jeho použitím našimi zákazníky. Více o CTF naleznete na http://support.microsoft.com/gp/machine-translation-corrections/cs.

Projděte si také anglickou verzi článku: 820729
Souhrn
Tento článek popisuje možnosti protokolování chyb rozhraní API protokolu HTTP.

Některé chyby, ke kterým dochází v aplikaci založené na protokolu HTTP jsou automaticky zpracovány rozhraním API protokolu HTTP namísto předávaný zpět do aplikace pro zpracování. K tomuto chování dochází, protože četnost takových chyb může být jinak zahlcení protokolu událostí nebo obslužné rutiny aplikace.

Následující témata popisují různé aspekty rozhraní API protokolu HTTP protokolování chyb.
  • Konfigurace rozhraní API protokolu HTTP errorlogging
    Kontrolu nastavení registru rozhraní API protokolu HTTP protokoluje chyby, themaximum povolenou velikost souborů protokolu a umístění souborů protokolu.
  • Formát HTTP APIerror protokoly
    Rozhraní API protokolu HTTP vytváří soubory protokolů, které jsou v souladu s vlastní Wide Web Consortium (W3C) protokolu souboru úmluv. Standardní nástroje slouží k analýze těchto souborů. Nicméně na rozdíl od souborů protokolu W3C, soubory protokolu HTTP API to notcontain názvy sloupců.
  • Typy chyb, které protokoly HTTP API
    Rozhraní API protokolu HTTP zaznamenává mnoho běžných chyb.
Další informace

Konfigurace protokolování chyb rozhraní API protokolu HTTP

Chcete-li konfigurovat protokolování chyb rozhraní API protokolu HTTP pro vás, přejděte "Zde je snadná oprava"sekce. Pokud chcete nakonfigurovat sami protokolování chyb rozhraní API protokolu HTTP, pokračujte "Opravím si sám"sekce.

Zde je snadná oprava

Chcete-li tento problém vyřešit automaticky, klepněte na tlačítko Stáhnout . V dialogovém okně Stažení souboru klepněte na tlačítko Spustit nebo Otevříta postupujte podle kroků v Průvodci snadno opravit.
  • Tento průvodce může být pouze v angličtině. Nicméně, automatická oprava však také funguje pro ostatní jazykové verze systému Windows.
  • Pokud nejste na počítači, který má problém, uložte snadnou opravu na jednotku flash nebo na disk CD a spusťte jej v počítači, který má problém.
Zakázat protokolování chyb rozhraní API protokolu HTTP
Povolit protokolování chyb rozhraní API protokolu HTTP

Opravím si sám

Tři hodnoty registru pod klíčem HTTP \Parameters řídit protokolování chyb rozhraní API protokolu HTTP. Tyto klíče jsou umístěny v následujícím klíči registru:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Poznámka: V novějších verzích operačního systému Windows může změnit umístění a forma hodnoty konfigurace.

Musíte mít pověření správce nebo místní systém ke změně hodnot registru a chcete zobrazit nebo změnit protokol soubory a složky, která je obsahuje.

Informace o konfiguraci hodnoty registru je pro čtení při spuštění ovladače rozhraní API protokolu HTTP. Proto pokud změníte nastavení, musíte zastavit a znovu spusťte ovladač načte nové hodnoty. Chcete-li to provést, zadejte následující příkazy konzoly:
příkaz net stop http
příkaz net start http
Název souboru protokolu se používá následující konvence:
httperr + pořadové číslo + log
Příklad: httperr4.log
Soubory protokolu jsou uvedená jakmile dosáhnou maximální velikosti, která určuje hodnotu registru ErrorLogFileTruncateSize . Tato hodnota nemůže být menší než 1 megabajt (MB).

Konfigurace protokolování chyb není platný nebo jakéhokoli druhu selhání dochází během zapisuje soubory protokolu HTTP API, rozhraní API protokolu HTTP používá protokolování událostí upozornění správcům, že nedochází k protokolování chyb.

Následující tabulka popisuje hodnoty konfigurace registru.
Hodnota registruPopis
EnableErrorLoggingDWORD můžete nastavit na hodnotu TRUE Chcete-li povolit protokolování chyb nebo na hodnotu FALSE zakázat. Výchozí hodnota je TRUE.
ErrorLogFileTruncateSizeHodnota DWORD , která určuje maximální velikost souboru protokolu chyb v bajtech. Výchozí hodnota je jeden MB (0x100000).

Poznámka: Zadaná hodnota nesmí být menší než výchozí hodnotu.
ErrorLoggingDirŘetězec , který určuje složku, kde rozhraní API protokolu HTTP umístí soubory protokolování.

Rozhraní API protokolu HTTP v zadané složce vytvoří podsložku HTTPERR a uloží soubory protokolu v podsložce. Této podsložky a soubory protokolu se zobrazí stejná nastavení oprávnění. Správce a místní systémový účet mají úplný přístup. Ostatní uživatelé nemají přístup.

Je výchozí složku při není složka zadaná v registru:
%SystemRoot%\System32\LogFiles

Poznámka: Řetězcová hodnota ErrorLoggingDir musí být úplnou místní cestu. Může však obsahovat % SystemRoot %. Nelze použít síťovou jednotku nebo síťové sdílené položky.

zpět na horní

Formát v protokolech chyb HTTP API

Soubory protokolu chyb rozhraní API protokolu HTTP obecně, mají stejný formát jako chybové protokoly W3C, kromě toho, že soubory protokolu chyb rozhraní API protokolu HTTP neobsahují záhlaví sloupců. Každý řádek rozhraní API protokolu HTTP protokolu zaznamená jednu chybu. Pole se objeví v určitém pořadí. Jednoho místa (0x0020) odděluje jednotlivá pole z předchozího pole. V každém poli Nahradit znaménka plus (0x002B) znaky mezery, tabulátory a netisknutelné řídicí znaky.

Následující tabulka uvádí pole a pořadí polí v záznamu protokolu chyb.
PolePopis
DatumPole Datum formát W3C. Toto pole je založeno na koordinovaný světový čas (UTC). Pole datum je vždy deset znaků ve tvaru rrrr-MM-DD. 1. května 2003 například vyjádřena jako 2003-05-01.
ČasPole čas formát W3C. Toto pole je založeno na čas UTC. Pole čas je vždy osm znaků ve formě MM:HH:SS. Například 17:30:00 (UTC) se vyjadřuje v 17:30:00.
IP adresa klientaAdresa IP klientem. Hodnota v tomto poli může být buď adresu IPv4 nebo IPv6. Pokud se adresa IP klienta je adresa IPv6, Id_oboru pole také součástí adresu.
Port klientaČíslo portu pro klientem.
Adresa IP serveruAdresa IP příslušného serveru. Hodnota v tomto poli může být buď adresu IPv4 nebo IPv6. Pokud je adresa IP serveru adresu IPv6, Id_oboru pole také součástí adresu.
Port serveruČíslo portu na ohrožený server.
Verze protokoluVerze protokolu, který je používán.

Pokud připojení nebylo byla analyzována dostatečně todetermine verzi protokolu, pomlčku (0x002D) se používá jako placeholderfor prázdné pole.

Pokud hlavní číslo verze a číslo podverze je analyzován isgreater než nebo rovna 10 verze je uvedena jako HTTP /?.?.
SlovesoSloveso státu, které poslední požadavek tedy analyzovat průchody. Neznámá akce jsou zahrnuty, ale všechny operace, které je větší než 255 bajtů je zkrácena na této délce. Pokud operace není k dispozici, pomlčku (0x002D) slouží jako zástupný znak pro prázdné pole.
CookedURL + dotazAdresa URL a libovolný dotaz, který je spojen s ním jsou přihlášeni jako jedno pole, které jsou odděleny otazníkem (0x3F). Toto pole je zkrácena na jeho limit délky 4 096 bajtů.

Pokud tato adresa URL byla analyzována ("vařená"), je zaznamenána v místní znakové stránky převodu a je považován za pole ve formátu Unicode.

Pokud tato adresa URL nebyla byla analyzována ("vařená") na thetime protokolování, je přesně, kopírování bez jakékoli převod znakové sady Unicode.

Pokud rozhraní API protokolu HTTP nelze analyzovat tuto adresu URL, hyphen(0x002D) slouží jako zástupný znak pro prázdné pole.
Stav protokoluStav protokolu nemůže být větší než 999.

Pokud stav protokolu odpovědi na requestis k dispozici, je zaznamenána, tomto poli.

Pokud stav protokolu není k dispozici, hyphen(0x002D) slouží jako zástupný znak pro prázdné pole.
ID sítěV této verzi rozhraní API protokolu HTTP nepoužívá. V tomto poli se vždy zobrazí zástupný znak pomlčku (0x002D).
Z důvodu fráziToto pole obsahuje řetězec, který určuje typ chyby, který je právě přihlášen. Nikdy toto pole zůstane prázdné.
Název frontyTento název fronty požadavků.
Následující ukázkové řádky jsou z protokolu chyb rozhraní API protokolu HTTP:
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 80-----Timer_MinBytesPerSecond 64388 127.0.0.1
zpět na horní

Druhy chyb, které protokoly HTTP API

Rozhraní API protokolu HTTP protokoluje chybové odpovědi na klienty, časové limity připojení, osamocené požadavky a přerušená připojení, které jsou zpracovány správně.

Následující seznam uvádí druhy chyb, které zaznamenává rozhraní API protokolu HTTP:
  • Odpovědi na klienty Rozhraní API protokolu HTTP odešle odpověď klientovi, například 400 chybu, která je způsobena chyba analýzy poslední přijatý požadavek. Po rozhraní API protokolu HTTP odešle odpověď chybě, ukončí připojení.
  • Časové limity připojení Rozhraní API protokolu HTTP časový limit připojení. Je-li žádost čekající na vyřízení časový limit připojení whenthe, žádost lze získat další informace o theconnection v protokolu chyb.
  • Orphaned požadavky Procesům uživatelského režimu se neočekávaně zastaví, dokud jsou stále ve frontě požadavků, které jsou směrovány do tohoto procesu. Rozhraní API protokolu HTTP osamocené požadavky zaznamenává do protokolu chyb.
Typy specifických chyb jsou označeny Fráze z důvodu řetězce, které se vždy zobrazí jako poslední pole každého řádku chyba. Následující tabulka uvádí důvod věty rozhraní API protokolu HTTP.
Z důvodu fráziPopis

AppOfflineK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože chyby aplikací způsobilo, že aplikace do režimu offline.
AppPoolTimerK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože je příliš zaneprázdněn a nemůže zpracovat žádost proces fondu aplikací.
AppShutdownK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože aplikace ukončena automaticky v reakci na správce zásad.
BadRequestPři zpracování požadavku došlo k chybě analýzy.
Client_ResetPřipojení mezi klientem a serverem byla uzavřena před žádost může být přiřazen pracovní proces. Nejčastější příčinou tohoto chování je klient předčasně ukončí připojení k serveru.
Connection_Abandoned_By_AppPoolPracovní proces fondu aplikací neočekávaně nebo ukončením její úchyt osamocené čekající žádosti.
Connection_Abandoned_By_ReqQueuePracovní proces fondu aplikací neočekávaně nebo ukončením její úchyt osamocené čekající žádosti. Specifické pro systém Windows Vista a novější verze a Windows Server 2008 a novější verze.
Connection_DroppedPřipojení mezi klientem a serverem bylo ukončeno dříve, než server může odeslat paket konečné odpovědi. Nejčastější příčinou tohoto chování je klient předčasně ukončí připojení k serveru.
Connection_Dropped_List_FullJe úplný seznam přerušená připojení mezi klienty a serverem. Specifické pro systém Windows Vista a novější verze a Windows Server 2008 a novější verze.
ConnLimitK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože limit připojení úroveň webu byl dosažen nebo překročen.
Connections_RefusedJádra paměti NonPagedPool klesla pod 20MB a ovladač http.sys přestal přijímat nová připojení
ZakázánoK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože správce vzala aplikace v režimu offline.
EntityTooLargeEntita překročení maximální povolené velikosti.
Hodnota FieldLengthByla překročena maximální délka pole.
ZakázánoPři rozkládání došlo zakázané prvku nebo sekvence.
ZáhlavíDošlo k chybě analýzy v záhlaví.
Název hostiteleChyba analýzy došlo k chybě při zpracování název hostitele.
InterníDošlo k chybě vnitřního serveru (chyby HTTP 500).
Invalid_CR/LFDošlo neplatné konce nebo odřádkování.
LengthRequiredChybí požadovaná délka.
NENÍ K DISPOZICIK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože došlo k vnitřní chybě (například selhání přidělení paměti nebo seznam adres URL rezervace konflikt).
N / IDošlo k chybě není implementováno (chyby HTTP 501) nebo (chyby HTTP 503) došlo k chybě není k dispozici služba vzhledem neznámé kódování přenosu.
ČísloPři zpracování čísla došlo k chybě analýzy.
Předběžná podmínkaChybí požadované podmínky.
QueueFullK dispozici Chyba služby došlo k chybě (chyby HTTP 503). Služba není k dispozici, protože je plný fronty požadavků aplikace.
RequestLengthByla překročena maximální délka požadavku.
Timer_AppPoolVypršela platnost připojení, protože požadavek čekala příliš dlouho ve frontě fondu aplikací pro serverové aplikace vyřazuje z fronty a jeho zpracování. Doba trvání časového limitu je ConnectionTimeout. Ve výchozím nastavení je tato hodnota nastavena na dvě minuty.
Timer_ConnectionIdleSpojení vypršelo a zůstává v nečinnosti. Výchozí doba trvání ConnectionTimeout je dvě minuty.
Timer_EntityBodyPřipojení vypršel před tělo entity žádosti byly přijaty. Pokud žádost má jasně tělo entity, zapne rozhraní API protokolu HTTP Timer_EntityBody timer. Zpočátku je limit tento časovač nastavit na hodnotu ConnectionTimeout (obvykle dvě minuty). Pokaždé, když o této žádosti obdrží další označení dat, rozhraní API protokolu HTTP resetuje časovač připojení další dvě minuty (nebo cokoliv, co je zadáno v ConnectionTimeout).
Timer_HeaderWaitVzhledem k tomu, že záhlaví analýza požadavku trvalo déle než výchozího limitu dvou minut vypršela platnost připojení.
Timer_MinBytesPerSecondPřipojení vypršel, protože klient nebyl příjem odpovědi přiměřenou rychlostí. Rychlost odesílání odpovědí byl pomalejší než výchozí 240 bajtů za sekundu. Tuto funkci lze řídit pomocí vlastnosti metabáze MinFileBytesPerSec .
Timer_ReqQueueVzhledem k tomu, že požadavek čekala příliš dlouho ve frontě fondu aplikace vyřazuje z fronty aplikace serveru vypršela platnost připojení. Doba trvání časového limitu je ConnectionTimeout. Ve výchozím nastavení je tato hodnota nastavena na dvě minuty. Specifické pro systém Windows Vista a novější verze a Windows Server 2008 a novější verze.
Timer_ResponseVyhrazena. Aktuálně nejsou používány.
Timer_SslRenegotiationPřipojení vypršelo, protože vyjednávání SSL mezi klientem a serverem trval déle než výchozí interval dvou minut.
ADRESA URLPři zpracování adresy URL došlo k chybě analýzy.
URL_LengthAdresa URL překročil maximální povolenou velikost.
SlovesoPři zpracování operace došlo k chybě analýzy.
Version_N/S(Chyby HTTP 505) došlo k chybě verze není podporována.

zpět na horní
Odkazy
Další informace o tom, jak přidat další protokolování polí pro protokolování chyb HTTP služby IIS klepněte na následující číslo článku databáze Microsoft Knowledge Base:
832975 Další možnosti jsou k dispozici pro protokolování v souboru Httperr # .log ve službě IIS 6.0 a IIS 7.0
fixme oprava automatickou

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 820729 - Poslední kontrola: 03/08/2016 04:25:00 - Revize: 9.0

Windows Server 2008 R2 Standard, Windows Server 2008 R2 Enterprise, Windows Server 2008 Enterprise, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 for Embedded Systems, Windows Server 2012 R2 Foundation, Windows Server 2012 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows 10, Windows 10 Enterprise, released in July 2015, Windows 10 Pro, released in July 2015, Windows 10 Version 1511, Windows 8.1, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows 8, Windows 8 Pro, Windows 8 Enterprise, Windows 7 Professional, Windows 7 Enterprise

  • kbhttphandlers kbhttp kbapi kberrmsg kbinfo kbfixme kbmsifixme kbmt KB820729 KbMtcs
Váš názor