Galat saat masuk api HTTP

PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.

Klik disini untuk melihat versi Inggris dari artikel ini: 820729
Ringkasan
Artikel ini menjelaskan kemampuan pencatatan galat api HTTP.

Beberapa galat yang terjadi pada aplikasi berbasis HTTP ditangani secara otomatis oleh API HTTP bukan dikembalikan ke aplikasi untuk ditangani. Perilaku ini terjadi karena frekuensi galat semacam jika dibiarkan dapat membanjiri log peristiwa atau pegangan aplikasi.

Topik berikut menjelaskan berbagai aspek pencatatan galat HTTP API.
  • Mengkonfigurasi errorlogging HTTP API
    Tataan registri mengontrol HTTP API log galat, themaximum diizinkan ukuran berkas log, dan lokasi berkas log.
  • Format HTTP APIerror log
    HTTP API membuat berkas log yang mematuhi dengan dunia Wide Web Consortium (W3C) berkas log Konvensi. Anda dapat menggunakan peralatan standar untuk memilah berkas log tersebut. Namun, tidak seperti berkas log W3C, berkas log HTTP API melakukan notcontain nama kolom-kolom.
  • Jenis galat yang dicatat oleh log HTTP API
    HTTP API mencatat berbagai macam galat.
Pemecahan masalah

Mengkonfigurasi pengelogan galat HTTP API

Tiga nilai registri di bawah bukti kunci HTTP \Parameters mengontrol pengelogan galat HTTP API. bukti kunci tersebut terdapat pada bukti kunci registri berikut ini:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Catatan Lokasi dan bentuk nilai konfigurasi dapat berubah di versi sistem operasi Windows.

Anda harus memiliki kredensial Administrator/sistem lokal untuk mengubah nilai registri, dan untuk melihat atau mengubah berkas log dan folder yang berisi mereka.

Informasi konfigurasi di dalam nilai registri akan dibaca ketika pengandar HTTP API memulai. Oleh karena itu, jika Anda mengubah pengaturan, Anda harus berhenti, dan kemudian mulai ulang pengandar untuk membaca nilai yang baru. Untuk melakukannya, ketik perintah konsol berikut ini:
net stop http
net start http
Konvensi penamaan berikut ini digunakan untuk menamai berkas log:
httperr + urutan menurun nomor + .log
Contoh: httperr4.log
Berkas log akan disiklus saat mencapai ukuran maksimum yang menetapkan nilai registri ErrorLogFileTruncateSize . Nilai ini tidak boleh kurang dari 1 megabyte (MB).

Jika konfigurasi pengelogan galat tidak valid, atau jika terjadi kegagalan jenis apapun ketika HTTP API ditulis ke berkas log, HTTP API menggunakan pengelogan kejadian untuk memberitahukan Administrator bahwa pengelogan galat tidak terjadi.

Daftar Tabel berikut ini mendeskripsikan nilai konfigurasi registri.
Nilai registriDeskripsi
EnableErrorLoggingDWORD yang dapat Anda tetapkan menjadi TRUE untuk mengaktifkan pengelogan galat atau menjadi FALSE untuk menonaktifkannya. nilai asali adalah TRUE.
ErrorLogFileTruncateSizeDWORD yang menentukan ukuran maksimum berkas log galat, dalam byte. Nilai asali adalah satu MB (0x100000).

Catatan Nilai yang dimasukkan tidak boleh lebih kecil daripada nilai asali.
ErrorLoggingDirString yang menentukan folder mana HTTP API akan menaruh berkas pengelogan.

HTTP API akan membuat subfolder HTTPERR di folder tertentu, dan kemudian menyimpan berkas log di dalam subfolder. Subfolder dan berkas log menerima pengaturan perizinan yang sama. Administrator dan akun sistem lokal memiliki akses penuh. Pengguna lain tidak memiliki akses.

Berikut adalah folder asali jika folder tidak disebutkan di dalam registri:
%SystemRoot%\System32\LogFiles

Catatan Nilai untai ErrorLoggingDir harus garis jatuh berseri lokal yang memenuhi syarat. Namun, garis jatuh berseri tersebut boleh mengandung % SystemRoot %. Kandar jaringan atau berbagi jaringan tidak dapat digunakan.

cadangan

Format log galat HTTP API

Umumnya, berkas log galat HTTP API memiliki format yang sama dengan log galat W3C, kecuali bahwa berkas log galat HTTP API tidak berisi judul kolom. Tiap baris pada log galat HTTP API mencatat satu galat. Kolom muncul dalam urutan menurun yang spesifik. Karakter satu spasi (0x0020) memisahkan tiap kolom dari kolom sebelumnya. Pada tiap kolom, tanda plus (0x002B) akan menggantikan penspasian karakter, tab, dan karakter kontrol yang tidak dapat dicetak.

Daftar Tabel berikut ini menandakan kolom dan urutan menurun kolom dalam catatan log galat.
BidangDeskripsi
TanggalKolom tanggal mengikuti W3C format. Kolom ini berdasarkan pada Coordinated Universal Time (UTC). Kolom tanggal selalu berisi 10 karakter dalam bentuk YYYY-MM-DD. Sebagai contoh, 1 Mei 2003 ditulis sebagai 2003-05-01.
WaktuKolom waktu mengikuti W3C format. Kolom ini berdasarkan UTC. Kolom waktu yang selalu berisi 8 karakter dalam bentuk: SS. Sebagai contoh, 5:30 PM (UTC) ditulis sebagai 17:30:00.
alamat penyuratan IP klienalamat penyuratan IP klien yang terpengaruh. Nilai dalam kolom ini dapat berupa alamat penyuratan IPv4 atau alamat penyuratan IPv6. Jika alamat penyuratan IP klien adalah alamat penyuratan IPv6, kolom ScopeId juga dimasukkan ke dalam alamat penyuratan.
Port klienNomor port untuk klien yang terpengaruh.
alamat penyuratan IP serveralamat penyuratan IP server yang terpengaruh. Nilai dalam kolom ini dapat berupa alamat penyuratan IPv4 atau alamat penyuratan IPv6. Jika alamat penyuratan IP server adalah alamat penyuratan IPv6, kolom ScopeId juga dimasukkan ke dalam alamat penyuratan.
Server PortNomor port server yang terpengaruh.
Versi protokolVersi protokol yang digunakan.

Jika sambungan tidak dipilah secara memadai todetermine versi protokol, tanda penghubung (0x002D) digunakan sebagai placeholderfor kolom yang kosong.

Jika nomor versi utama atau nomor versi tambahan yang dipilah isgreater dari atau sama dengan 10, versi log sebagai HTTP /?.?.
Kata kerjaKata kerja menyatakan permintaan terakhir yang dipilah telah dilewatkan. Kata kerja tak diketahui akan dimasukkan, namun kata kerja lebih dari 255 byte akan dipendekkan menjadi sepanjang ini. Jika kata kerja tidak tersedia, tanda penghubung (0x002D) digunakan sebagai pengganti kolom yang kosong.
CookedURL + kueriURL dan permintaan mana pun yang terkait dengan log sebagai satu kolom yang dipisahkan oleh tanda tanya (0x3F). Kolom ini dipendekkan menjadi sepanjang batasan 4,096 byte.

Jika URL ini telah dipilah ("cooked"), file log dengan konversi halaman kode lokal dan dianggap sebagai kolom Unicode.

Jika URL ini tidak telah dipilah ("cooked") di thetime pengelogan, maka akan disalin seluruhnya, tanpa konversi menjadi Unicode.

Jika HTTP API tidak dapat memilah URL ini, hyphen(0x002D) digunakan sebagai pengganti kolom yang kosong.
Status protokolStatus protokol tidak dapat melebihi 999.

Jika status protokol dari respons pada requestis tersedia, ini dicatat di kolom ini.

Jika status protokol tidak tersedia, hyphen(0x002D) digunakan sebagai pengganti kolom yang kosong.
SiteIdTidak digunakan dalam versi ini HTTP API. Tanda penghubung (0x002D) akan selalu ditampilkan dalam kolom ini.
Frasa alasanKolom ini berisi untai yang menunjukkan jenis galat yang sedang dicatat. Kolom ini tidak boleh kosong.
Nama antrianIni permintaan nama antrian.
Baris contoh berikut ini berasal dari log galat 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
cadangan

Jenis galat yang dicatat oleh log HTTP API

HTTP API mencatat respons galat ke klien, waktu sambungan habis, permintaan yang ditinggalkan, dan sambungan yang putus yang ditangani dengan benar.

Daftar berikut ini menunjukkan jenis galat yang dicatat oleh log HTTP API:
  • Respons untuk klien HTTP API mengirimkan respons galat ke klien, contohnya, galat 400 yang disebabkan oleh galat pemilahan saat penerimaan permintaan terakhir. Setelah HTTP API mengirimkan respons galat, menutup sambungan.
  • Waktu sambungan habis HTTP API kehabisan waktu sambungan. Jika permintaan tertunda whenthe sambungan waktu habis, permintaan digunakan untuk menyediakan informasi lebih lanjut tentang theconnection dalam log galat.
  • Permintaan Orphaned Proses mode pengguna berhenti secara tiba-tiba ketika ada permintaan yang masih mengantri yang diarahkan ke proses tersebut. HTTP API mencatat permintaan yang ditinggalkan dalam log galat.
Jenis galat yang spesifik ditunjukkan oleh untai Frasa alasan yang selalu muncul pada akhir kolom dari tiap baris galat. Daftar Tabel berikut ini menunjukkan frasa alasan API HTTP.
Frasa alasanDeskripsi

AppOfflineTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena galat aplikasi menyebabkan aplikasi dibawa luring.
AppPoolTimerTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena proses pool aplikasi terlalu sibuk menangani permintaan.
AppShutdownTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena aplikasi menutup secara otomatis sebagai respons atas kebijakan administrator.
BadRequestGalat pemilahan terjadi saat memroses suatu permintaan.
Client_ResetSambungan antara klien dan server tertutup sebelum permintaan dapat diajukan ke proses pengerjaan. Penyebab paling umum perilaku ini adalah klien terlalu cepat menutup sambungan ke server.
Connection_Abandoned_By_AppPoolProses pengerjaan dari pool aplikasi berhenti secara tiba-tiba atau mengabaikan permintaan yang tertunda dengan menutup pegangan.
Connection_Abandoned_By_ReqQueueProses pengerjaan dari pool aplikasi berhenti secara tiba-tiba atau mengabaikan permintaan yang tertunda dengan menutup pegangan. Khusus untuk Windows Vista dan versi yang lebih baru dan Windows Server 2008 dan versi yang lebih baru.
Connection_DroppedSambungan antara klien dan server tertutup sebelum server dapat mengirimkan paket respons akhir. Penyebab paling umum perilaku ini adalah klien terlalu cepat menutup sambungan ke server.
Connection_Dropped_List_FullDaftar koneksi yang terputus antara klien dan server telah penuh. Khusus untuk Windows Vista dan versi yang lebih baru dan untuk Windows Server 2008 dan versi yang lebih baru.
ConnLimitTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena tingkat batas sambungan situs telah tercapai atau melebihi.
Connections_Refusedkehabisan memori NonPagedPool kernel telah turun di bawah 20MB dan http.sys berhenti menerima sambungan baru
NonaktifTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena administrator telah membawa aplikasi ke luring.
EntityTooLargeEntitas melebihi ukuran maksimum yang diizinkan.
FieldLengthMelebihi batas panjang kolom.
DilarangDilarang elemen atau urutan menurun ditemukan saat memilah.
HeaderTerjadi galat pemilahan di judul.
Nama hostGalat pemilahan terjadi saat memroses sebuah nama host.
InternalGalat internal server terjadi (galat HTTP 500).
Invalid_CR LFTerjadi ilegal pembawa atau umpan baris.
LengthRequiredNilai panjang yang dibutuhkan telah hilang.
N/ATerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena terjadi galat internal (misalnya kegagalan alokasi kehabisan memori atau URL reservasi Daftar konflik).
N / SAYATerjadi galat yang tidak diterapkan (galat HTTP 501), atau terjadi galat Layanan tidak tersedia (galat HTTP 503) karena pengkodean transfer tidak dikenal.
NomorGalat pemilahan terjadi saat memroses suatu nomor.
PrasyaratPrakondisi yang dibutuhkan telah hilang.
QueueFullTerjadi galat Layanan tidak tersedia (galat HTTP 503). Layanan ini tidak tersedia karena permintaan antrian aplikasi sudah penuh.
RequestLengthMelebihi batas panjang permintaan.
Timer_AppPoolSambungan kedaluwarsa karena permintaan yang menunggu terlalu lama dalam antrian pool aplikasi untuk server aplikasi untuk de antrian dan proses ini. Durasi waktu habis adalah ConnectionTimeout. secara asali, nilai ini diatur ke dua menit.
Timer_ConnectionIdleSambungan kedaluwarsa dan tetap diam. Durasi ConnectionTimeout default adalah dua menit.
Timer_EntityBodySambungan kedaluwarsa sebelum badan entitas permintaan datang. Ketika permintaan jelas memiliki badan entitas, HTTP API menghidupkan penghitung waktu Timer_EntityBody . Pada awalnya, batas penghitung waktu ini diatur ke nilai ConnectionTimeout (biasanya, dua menit). Setiap kali indikasi data lain yang diterima dalam permintaan ini, HTTP API akan mereset penghitung waktu untuk memberikan sambungan dua menit tambahan (atau apa pun yang ditentukan dalam ConnectionTimeout).
Timer_HeaderWaitSambungan kedaluwarsa karena pemilahan judul untuk permintaan memakan waktu lebih dari batas bawaan dua menit.
Timer_MinBytesPerSecondSambungan kedaluwarsa karena klien tidak menerima respons pada kecepatan yang wajar. Kecepatan pengiriman respons ini lebih lambat daripada asali 240 byte/detik. Hal ini dapat dikontrol dengan properti metabase MinFileBytesPerSec .
Timer_ReqQueueSambungan kedaluwarsa karena permintaan yang menunggu terlalu lama dalam antrian pool aplikasi untuk server aplikasi untuk de antrian. Durasi waktu habis adalah ConnectionTimeout. secara asali, nilai ini diatur ke dua menit. Khusus untuk Windows Vista dan versi yang lebih baru dan Windows Server 2008 dan versi yang lebih baru.
Timer_ResponseDilindungi undang-undang. Saat ini tidak digunakan.
Timer_SslRenegotiationSambungan kedaluwarsa karena renegosiasi antara klien dan server berlangsung lebih lama dari batas waktu asali dua menit.
URLGalat pemilahan terjadi saat memroses sebuah URL.
URL_LengthSebuah URL melebihi ukuran maksimum yang diizinkan.
Kata kerjaGalat pemilahan terjadi saat memroses sebuah kata kerja.
Version_N/STerjadi galat versi tidak didukung (galat HTTP 505).

cadangan
Referensi
Untuk informasi selengkapnya tentang cara menambah pengelogan tambahan kolom untuk IIS HTTP galat pengelogan, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
832975 Properti tambahan sekarang tersedia untuk pengelogan dalam berkas Httperr # .log di IIS 6.0 dan IIS 7.0

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 820729 - Tinjauan Terakhir: 08/06/2016 02:02:00 - Revisi: 7.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 kbmt KB820729 KbMtid
Tanggapan