Kļūda, piesakoties programmā HTTP API

SVARĪGI! Šis raksts ir tulkots, izmantojot Microsoft mašīntulkošanas programmatūru, un, iespējams, labots, izmantojot tehnoloģiju Community Translation Framework (CTF). Korporācija Microsoft publicē gan ar mašīntulkošanas programmatūru tulkotus rakstus, ko pēc tam rediģējuši kopienas pārstāvji, gan arī tulkotāju tulkotus rakstus, lai visi zināšanu bāzes raksti būtu pieejami vairākās valodās. Ar mašīntulkošanas programmatūru tulkotajos un kopienas pārstāvju rediģētajos tekstos var būt vārdu izvēles, sintakses un/vai gramatikas kļūdas. Korporācija Microsoft neuzņemas atbildību ne par kādām neprecizitātēm, kļūdām vai kaitējumu, kas radies nepareiza satura tulkojuma vai tā izmantošanas dēļ. Papildinformācija par CTF ir pieejama šeit: http://support.microsoft.com/gp/machine-translation-corrections/lv.

Noklikšķiniet šeit, lai skatītu šī raksta versiju angļu valodā: 820729
Kopsavilkums
Šajā rakstā ir aprakstīts HTTP API kļūdu reģistrēšanas iespējas.

Dažas kļūdas, kas rodas uz HTTP balstītā lietojumprogrammā, automātiski apstrādā HTTP API, un tās netiek nodotas apstrādei lietojumprogrammā. Tas notiek tāpēc, ka šādu kļūdu biežums pretējā gadījumā trigera notikums žurnālu vai lietojumprogrammas apdarinātāju.

Tālāk izklāstītajās tēmās aprakstīti dažādi HTTP API kļūdu reģistrēšanas aspekti.
  • Konfigurēt HTTP API errorlogging
    Reģistra iestatījumi nosaka, kā HTTP API reģistrē kļūdas, themaximum pieļaujamo žurnālfailu lielumu un žurnālfailu atrašanās vietu.
  • Žurnālu HTTP APIerror formāts
    HTTP API izveido žurnālfailus, kas atbilst pasaulē Wide tīmekļa konsorcija (W3C) žurnālfailu konvencijām. Lai parsētu šos žurnālfailus, var izmantot standarta rīkus. Tomēr atšķirībā no W3C žurnālfailiem HTTP API žurnālfailos to notcontain kolonnu nosaukumu.
  • Kļūdu tipi, ko reģistrē HTTP API
    HTTP API reģistrē daudzas bieži sastopamas kļūdas.
Papildindormācija

HTTP API kļūdu reģistrēšanas konfigurēšana

Lai automātiski konfigurētu HTTP API kļūdu reģistrēšanu, atveriet sadaļu "Šeit ir viegli noteikt"norādītās darbības. Ja vēlaties konfigurēt HTTP API kļūdu reģistrēšanu pats, atveriet sadaļu "Labot patstāvīgi"norādītās darbības.

Šeit ir viegli noteikt

Lai automātiski labotu šo problēmu, noklikšķiniet uz pogas lejupielādēt . dialoglodziņš Faila lejupielāde noklikšķiniet uz Atvērtvai palaist un pēc tam izpildiet vednī viegli noteikt.
  • Šis vednis, iespējams, būs tikai angļu valodā. Tomēr automātiskā labošana darbojas arī citās Windows valodu versijās.
  • Ja neesat pie datora, kurā radās problēma, saglabājiet viegli labošanas risinājumu zibatmiņas diskdzinis vai kompaktdiskā un pēc tam izpildiet to datorā, kurā radusies problēma.
Atspējojiet HTTP API kļūdu reģistrēšana
HTTP API kļūdu reģistrēšanas iespējošanu

Labot patstāvīgi

Trīs reģistra vērtības atslēgā HTTP \Parameters noteikt HTTP API kļūdu reģistrēšanu. Šīs atslēgas atrodas šajā reģistra atslēgā:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Piezīme. Atrašanās vieta un forma konfigurācijas vērtību jaunākās operētājsistēmas Windows versijās var mainīties.

Jums jābūt administratora/lokālās sistēmas akreditācijas datus, lai mainītu reģistra vērtības un skatīt vai mainīt žurnāla failus un mapes, kurā tie atrodas.

Reģistra vērtībās saglabātā konfigurācijas informācija tiek nolasīta, startējot HTTP API draiveri. Tādēļ, ja maināt iestatījumus, ir Pārtraukt un pēc tam restartējiet draiveris, lai nolasītu jaunās vērtības. Lai to izdarītu, ierakstiet šādas konsoles komandas:
net stop http
net start http
Žurnālfailu nosaukšanai tiek izmantota šāda nosaukumdošanas konvencija:
httperr + sērijas numurs +. log
Piemērs: httperr4.log
Žurnālfaili tiek veidoti no jauna sasniedzot maksimālo lielumu, kas norāda ErrorLogFileTruncateSize reģistra vērtību. Šī vērtība nedrīkst būt mazāka par vienu megabaitu (MB).

Ja kļūdu reģistrēšanas konfigurācija nav derīga vai jebkāda veida kļūme rodas HTTP API raksta datus žurnālfailos, HTTP API izmanto trigera notikums reģistrēšanu, lai informētu administratorus, ka kļūdu reģistrēšana nenotiek.

Šī tabula apraksta reģistra konfigurācijas vērtības.
Reģistra vērtībaApraksts
EnableErrorLoggingDWORD , ko var iestatīt iespējot kļūdu reģistrēšana TRUE vai FALSE, lai to atspējotu. noklusējuma vērtība ir TRUE.
ErrorLogFileTruncateSizeDWORD , kas norāda kļūdu žurnālfaila maksimālo lielumu baitos. noklusējuma vērtība ir viens MB (0x100000).

Piezīme. Norādītā vērtība nevar būt mazāka par noklusējuma vērtību.
ErrorLoggingDirVirkne , kas norāda, kur HTTP API saglabā reģistrācijas failus.

HTTP API norādītajā mapē izveido apakšmapi HTTPERR , un pēc tam saglabā žurnālfailus apakšmapē. Šai apakšmapei un žurnālfailiem saņem vienādi atļauju iestatījumi. Administratora un lokālās sistēmas kontiem ir pilna piekļuve. Citi lietotāji nevar piekļūt.

Šī ir noklusējuma mape, ja tā nav norādīta reģistrā:
%SystemRoot%\System32\LogFiles

Piezīme. ErrorLoggingDir virknes vērtība ir jābūt pilnībā kvalificētam lokālajam ceļam. Tomēr tas var ietvert % SystemRoot %. Nevar izmantot tīkla diskdzinis vai tīkla koplietojumā.

uz sākumu

HTTP API kļūdu žurnālu formāts

Parasti HTTP API kļūdu žurnālfailiem ir tāds pats formāts kā W3C kļūdu žurnāliem, izņemot to, ka HTTP API kļūdu žurnālfailos nav kolonnu virsrakstu. Katrā HTTP API kļūdu žurnāla rindiņā tiek reģistrēta viena kļūda. Lauki tiek sakārtoti noteiktā secībā. Katru lauku no iepriekšējā atdala viena atstarpe (0x0020). Katrā laukā pluszīmes (0x002B) aizstāj atstarpes rakstzīmes, tabulatorus un nedrukājamās kontroles rakstzīmes.

Tabulā norādīti lauki un lauku secība kļūdu žurnāla ieraksta.
LauksApraksts
DatumsLaukam datums ir W3C formāts. Šis lauks ir balstīts uz universālo koordinēto administratīvais laiks (UTC). Laukam datums vienmēr ir desmit rakstzīmes, ko pieraksta kā GGGG-MM-DD. Piemēram, 2003 1. maijs tiek izteikts kā 2003-05-01.
LaiksLaukam laiks ir W3C formāts. Šis lauks ir balstīts uz UTC. Laukam time vienmēr ir astoņas rakstzīmes, ko pieraksta kā mm: HH: ss. Piemēram, 5:30 PM (UTC) izsaka kā 17:30:00.
Klienta IP adreseIetekmētā klienta IP adrese. Vērtība šajā laukā var būt IPv4 adrese vai IPv6 adrese. Ja klienta IP adrese ir IPv6 adrese, ir iekļauts arī lauks ScopeId adresi.
Klienta portsIetekmētā klienta porta numurs.
Servera IP adreseIetekmētā servera IP adrese. Vērtība šajā laukā var būt IPv4 adrese vai IPv6 adrese. Ja servera IP adrese ir IPv6 adrese, ir iekļauts arī lauks ScopeId adresi.
Servera portsIetekmētā servera porta numurs.
Protokola versijaProtokola versija, kas tiek izmantota.

Ja savienojums nav pietiekami parsēts todetermine protokola versiju, tiek izmantota defise (0x002D) placeholderfor lauku tukšu.

Ja galvenās versijas vai jaunākās versijas numurs, kas tiek parsēts isgreater nekā vai vienāda ar 10, versija tiek reģistrēta kā HTTP /?.?.
vārdsVerba stāvoklis, ko pēdējo pieprasījumu, kas ir parsētais. Ir iekļauti nezināmi verbi, bet jebkurš Verbs, kas ir garāks par 255 baitiem tiek apcirsts. Ja Verbs nav pieejams, defise (0x002D) tiek izmantots tukšā lauka vietturi.
CookedURL + vaicājumsURL un ar to saistīts vaicājums tiek reģistrēts kā viens lauks, kas ir atdalīts ar jautājuma zīmi (0x3F). Šis lauks tiek apcirsts līdz 4096 baitiem garuma kvotas ierobežojums.

Ja šis URL ir parsēts ("apstrādāti"), tas tiek reģistrēts, izmantojot lokālās kodu lapas konvertēšanu un tiek uzskatīts par unikoda lauku.

Ja šis URL ir nav parsēts ("apstrādāti") pēc pieteikšanās laikiem, tas tiek precīzi nokopēts, nekonvertējot to unikodā.

Ja HTTP API nevar parsēt šo URL, hyphen(0x002D) vietturi tiek izmantota lauku tukšu.
Protokola statussProtokola statusa vērtība nevar būt lielāka par 999.

Ja atbilde uz requestis pieejams Protokola statuss, tas tiek reģistrēts šajā laukā.

Ja Protokola statuss nav pieejams, hyphen(0x002D) vietturi tiek izmantota lauku tukšu.
SiteIdNetiek izmantota šajā HTTP API versijā. Šajā laukā vienmēr tiek lietota viettura defise (0x002D).
Iemesla frāzeŠajā laukā ir virkne, kas identificē reģistrētās kļūdas veida. Šis lauks nekad netiek atstāts tukšs.
Rindas vārds un uzvārdsŠis ir pieprasījuma rindas vārds un uzvārds.
Tālāk norādītās parauga rindiņas ir no HTTP API kļūdu žurnāla:
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
uz sākumu

Veida kļūdas, ko reģistrē HTTP API

HTTP API reģistrē kļūdas ziņojumus klientiem, savienojuma taimautus, bāreņpieprasījumus un izbeigtos savienojumus, kas tiek nepareizi apstrādāti.

Šajā sarakstā norāda kļūdas, ko reģistrē HTTP API veidiem:
  • Atbildes klientiem HTTP API nosūta klientam kļūdas ziņojumu, piemēram, kļūdu Nr. 400, ko izraisījusi pēdējā saņemtā pieprasījuma parsēšanas kļūda. HTTP API nosūta kļūdas ziņojumu, kad tas aizver savienojumu.
  • Savienojuma taimauts HTTP API iestājies taimauts savienojums. Ja pieprasījums gaida kad savienojuma taimautam, pieprasījums tiek izmantots, lai sniegtu papildinformāciju par theconnection kļūdu žurnālā.
  • Orphaned pieprasījumi lietotāja režīms procesam negaidīti pārtrauc kamēr rindā vēl ir ievietoti pieprasījumi, kas tiek maršrutēti šim procesam. HTTP API reģistrē bāreņpieprasījumus kļūdu žurnālā.
Konkrēti kļūdu tipi tiek raksturoti ar Iemesla frāzes virknēm, kas vienmēr ir redzamas katras kļūdas rindiņas pēdējā laukā. Tālāk redzamajā tabulā ir identificētas HTTP API iemesla frāzes.
Iemesla frāzeApraksts

AppOfflinePakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo lietojumprogrammas kļūdu dēļ lietojumprogramma pārslēgusies bezsaistē.
AppPoolTimerPakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo lietojumprogrammu pūla process ir pārāk aizņemts, lai apstrādātu pieprasījumu.
AppShutdownPakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo lietojumprogramma tika automātiski izslēgta, ievērojot administratora politiku.
BadRequestApstrādājot pieprasījumu, radās parsēšanas kļūda.
Client_ResetKlienta un servera savienojums tika slēgts, pirms pieprasījumu varēja piešķirt darbinieka procesam. Šī problēma visbiežāk rodas tāpēc ir, ka klients priekšlaicīgi slēdz savienojumu ar serveri.
Connection_Abandoned_By_AppPoolDarbinieka process lietojumprogrammas pūlā ir negaidīti vai atstājis gaidošu pieprasījumu, aizverot tā turi.
Connection_Abandoned_By_ReqQueueDarbinieka process lietojumprogrammas pūlā ir negaidīti vai atstājis gaidošu pieprasījumu, aizverot tā turi. Noteiktu Windows Vista un jaunākās versijās un Windows Server 2008 un jaunākās versijās.
Connection_DroppedKlienta un servera savienojums tika slēgts, pirms serveris varēja nosūtīt galīgo atbildes paketi. Šī problēma visbiežāk rodas tāpēc ir, ka klients priekšlaicīgi slēdz savienojumu ar serveri.
Connection_Dropped_List_FullStarp klientu un serveri izbeigto savienojumu saraksts ir pilns. Noteiktu Windows Vista un jaunākās versijās un Windows Server 2008 un jaunākās versijās.
ConnLimitPakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo ir sasniegts vai pārsniegts vietnes līmeņa savienojumu kvotas ierobežojums.
Connections_RefusedKodola NonPagedPool atmiņa ir samazinājusies zem 20MB un http. sys ir pārtraucis jaunu savienojumu
AtspējotsPakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo administrators ir pārslēdzis programmu bezsaistes režīms.
EntityTooLargeEntītija pārsniedz maksimālo pieļaujamo lielumu.
FieldLengthIr pārsniegts lauka garuma kvotas ierobežojums.
AizliegtsParsēšanas laikā tika atrasts aizliegts elements vai secība.
GalveneGalvenē radās parsēšanas kļūda.
resursdatora vārds un uzvārdsApstrādājot resursdatora nosaukumu, radās parsēšanas kļūda.
IekšējāRadās iekšēja servera kļūda (HTTP kļūda 500).
Invalid_CR/LFRadās nederīga rakstatgrieze vai rindas padeve.
LengthRequiredTrūkst nepieciešamā garuma vērtības.
N/APakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo radās iekšēja kļūda (piemēram, atmiņas iedalīšanas kļūme vai konflikts URL rezervācijas sarakstu).
N / INeīstenošanu saistīta kļūda (HTTP kļūda 501) vai pakalpojuma nepieejamības kļūda (HTTP kļūda 503) nezināmas pārsūtīšanas kodēšanas dēļ.
NumursApstrādājot skaitli, radās parsēšanas kļūda.
NosacījumsTrūkst obligāta priekšnoteikuma.
QueueFullPakalpojuma nepieejamības kļūda (HTTP kļūda 503). Pakalpojums nav pieejams, jo lietojumprogrammas pieprasījumu rinda ir pilna.
RequestLengthIr pārsniegts pieprasījuma garuma kvotas ierobežojums.
Timer_AppPoolSavienojums beidzies, jo pieprasījums pārāk ilgi gaidīja lietojumprogrammu pūla rindā servera lietojumprogramma to rindpārlēces rindas un apstrādātu. Šī taimauta ilgums ir ConnectionTimeout. pēc noklusējuma šī vērtība ir iestatīta uz divām minūtēm.
Timer_ConnectionIdleSavienojums beidzies, un tas ir dīkstāvē. Noklusējuma ConnectionTimeout ilgums ir divas minūtes.
Timer_EntityBodySavienojums beidzies, pirms tika saņemts pieprasījuma entītijas pamatteksts. Ja skaidri pieprasījumam ir entītijas pamatteksts, HTTP API ieslēgs Timer_EntityBody taimeri. Sākumā šī taimera ierobežojumam ir iestatīta vērtība ConnectionTimeout (parasti divas minūtes). Katru reizi, kad par šo pieprasījumu tiks saņemta norāde šo citu datu, HTTP API atiestatīs taimeri, piešķirot savienojumam vēl divas minūtes (vai kāds ir norādīts ConnectionTimeout).
Timer_HeaderWaitSavienojums beidzies, jo galvenei, kas parsē pieprasījumu, bija vajadzīgs vairāk laika nekā noklusējuma ierobežojumam noteiktās divas minūtes.
Timer_MinBytesPerSecondSavienojums beidzies, jo klients nesaņēma pietiekami ātru atbildi. Atbildes sūtīšanas ātrums bija lēnāks nekā noklusējuma vērtība 240 baiti sekundē. To var kontrolēt ar metabāzes rekvizītu MinFileBytesPerSec .
Timer_ReqQueueSavienojums beidzies, jo pieprasījums pārāk ilgi gaidīja lietojumprogrammu pūla rindā servera lietojumprogramma to rindpārlēces rinda. Šī taimauta ilgums ir ConnectionTimeout. pēc noklusējuma šī vērtība ir iestatīta uz divām minūtēm. Noteiktu Windows Vista un jaunākās versijās un Windows Server 2008 un jaunākās versijās.
Timer_ResponseRezervēts. Pašlaik netiek izmantota.
Timer_SslRenegotiationSavienojums beidzies, jo atkārtotās SSL pārrunas starp klientu un serveri prasīja vairāk laika nekā noklusējuma taimauts, ir divas minūtes.
URLApstrādājot vietrādi URL, radās parsēšanas kļūda.
URL_LengthPārsniegts vietrāža URL maksimālais pieļaujamais garums.
vārdsApstrādājot verbu, radās parsēšanas kļūda.
Version_N/SAr neatbalstītu versiju saistīta kļūda (HTTP kļūda 505).

uz sākumu
Uzziņas
Lai iegūtu papildinformāciju par to, kā pievienot papildu reģistrēšanas laukus IIS HTTP kļūdu reģistrēšanai, noklikšķiniet uz šī raksta numura un lasiet Microsoft zināšanu bāze rakstu:
832975 Tagad ir pieejami papildu rekvizīti reģistrēšanai Httperr # log failu programmā IIS 6.0 un IIS 7.0
fixme fix it fixit

Brīdinājums: šis raksts ir tulkots automātiski

Rekvizīti

Raksta ID: 820729. Pēdējo reizi pārskatīts: 03/08/2016 04:48:00. Pārskatījums: 3.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 KbMtlv
Atsauksmes