Pengelogan W3C

Pengelogan yang diperluas W3C adalah jenis pengelogan sisi server yang dapat diaktifkan pada sesi server atau grup URL. Saat pengelogan W3C diaktifkan pada grup URL, pengelogan hanya dilakukan pada permintaan yang dirutekan ke Grup URL. File log terpisah dibuat untuk setiap grup URL yang dikonfigurasi untuk mengaktifkan pengelogan W3C.

Ketika pengelogan W3C diaktifkan pada sesi server, pengelogan berfungsi sebagai bentuk pengelogan terpusat untuk semua grup URL di bawah sesi server. Satu file log dipertahankan untuk semua grup URL dalam sesi server.

Tabel berikut mencantumkan bidang yang dapat dicatat oleh HTTP Server API. Tabel berisi subset konstanta HTTP_LOG_FIELD . Beberapa bidang yang tercantum di bawah ini dibuat secara otomatis oleh HTTP Server API secara internal dan oleh karena itu tidak terkandung dalam struktur HTTP_LOG_FIELDS_DATA . Kolom "Muncul Sebagai" berisi teks yang muncul di file log. Data dalam tabel berada dalam urutan kemunculan dalam rekaman file log.

Bidang yang tidak ditandai "API Server HTTP yang dihasilkan" harus diteruskan di dalam struktur HTTP_LOG_FIELDS_DATA oleh aplikasi. Aplikasi dapat menghasilkan bidang tersebut dari struktur HTTP_REQUEST yang diteruskan ke dalamnya.

Bidang Muncul Sebagai Deskripsi Anggota HTTP_LOG_FIELDS_DATA HTTP_LOG_FIELDS konstanta
Tanggal tanggal Tanggal terjadinya aktivitas. HTTP Server API dihasilkan. HTTP_LOG_FIELD_DATE
Waktu waktu Waktu, dalam waktu universal terkoordinasi (UTC), di mana aktivitas terjadi. HTTP Server API dihasilkan. HTTP_LOG_FIELD_TIME
Nama Layanan dan Nomor Instans s-sitename Nama layanan Internet dan nomor instans yang berjalan pada klien. ServiceName HTTP_LOG_FIELD_SITE_NAME
Nama Server s-computername Nama server tempat entri file log dibuat. ServerName HTTP_LOG_FIELD_COMPUTER_NAME
Alamat IP Server s-ip Alamat IP server tempat entri file log dibuat. ServerIp HTTP_LOG_FIELD_SERVER_IP
Metode metode cs Kata kerja yang diminta, misalnya, metode GET. Metode HTTP_LOG_FIELD_METHOD
Batang URI cs-uri-stem Target kata kerja, misalnya, Default.htm. UriStem HTTP_LOG_FIELD_URI_STEM
Kueri URI cs-uri-query Kueri, jika ada, yang coba dilakukan klien. Kueri Pengidentifikasi Sumber Daya Universal (URI) hanya diperlukan untuk halaman dinamis. UriQuery HTTP_LOG_FIELD_URI_QUERY
Server Port s-port Nomor port server yang dikonfigurasi untuk layanan. ServerPort HTTP_LOG_FIELD_SERVER_PORT
Nama Pengguna cs-username Nama pengguna terautentikasi yang mengakses server. Pengguna anonim ditunjukkan oleh tanda hubung. NamaPengguna HTTP_LOG_FIELD_USER_NAME
Alamat IP Klien c-ip Alamat IP klien yang membuat permintaan. ClientIp HTTP_LOG_FIELD_CLIENT_IP
Versi Protokol cs-version Versi protokol HTTP yang digunakan klien. HTTP Server API dihasilkan. HTTP_LOG_FIELD_VERSION
Agen Pengguna cs(User-Agent) Tipe browser yang digunakan klien. UserAgent HTTP_LOG_FIELD_USER_AGENT
Kuki cs(Cookie) Konten cookie yang dikirim atau diterima, jika ada. Kuki HTTP_LOG_FIELD_COOKIE
Perujuk cs(Referen) Situs yang terakhir dikunjungi pengguna. Situs ini menyediakan tautan ke situs saat ini. Perujuk HTTP_LOG_FIELD_REFERRER
Host cs-host Nama header host, jika ada. Host HTTP_LOG_FIELD_HOST
HTTP Status sc-status Kode status HTTP. ProtocolStatus HTTP_LOG_FIELD_STATUS
Substatus Protokol sc-substatus Kode kesalahan substatus. SubStatus HTTP_LOG_FIELD_SUB_STATUS
Win32 Status sc-win32-status Kode status Windows. Win32Status HTTP_LOG_FIELD_WIN32_STATUS
Byte yang Dikirim sc-byte Jumlah byte yang dikirim oleh server. API Server HTTP yang dihasilkan. HTTP_LOG_FIELD_BYTES_SENT
Byte yang Diterima cs-byte Jumlah byte yang diterima dan diproses oleh server. API Server HTTP yang dihasilkan. HTTP_LOG_FIELD_BYTES_RECV
Waktu yang Dibutuhkan waktu yang diambil Lamanya waktu yang diambil tindakan, dalam milidetik. API Server HTTP yang dihasilkan. HTTP_LOG_FIELD_TIME_TAKEN
ID Aliran streamid Id Aliran. API Server HTTP yang dihasilkan. HTTP_LOG_FIELD_STREAM_ID

 

File log adalah format berbasis teks ASCII yang dapat disesuaikan. Awalan bidang dalam file didefinisikan sebagai berikut:

Prefiks Deskripsi
s Tindakan server.
c Tindakan klien.
Sc Tindakan Server-ke-Klien.
cs Tindakan Klien-ke-Server.

 

Aplikasi dapat memilih satu atau beberapa bidang file log W3C Extended, namun, tidak semua bidang akan berisi informasi. Untuk bidang yang dipilih tetapi tidak ada informasi, tanda hubung (-) muncul sebagai tempat penampung. Jika bidang berisi karakter yang tidak dapat dicetak, API Server HTTP menggantinya dengan tanda plus (+) untuk mempertahankan format file log. Ini biasanya terjadi dengan serangan virus, ketika, misalnya, pengguna berbahaya mengirim pengembalian kereta dan umpan baris yang, jika tidak diganti dengan tanda plus (+), akan merusak format file log. Bidang dipisahkan oleh spasi.

Jika bidang diaktifkan oleh grup URL atau sesi server, tetapi tidak dipilih untuk permintaan, bidang tersebut muncul di file log dengan tanda hubung (-) sebagai tempat penampung.

File log dibuat ketika permintaan pertama tiba di Grup URL atau sesi server, file tersebut tidak dibuat saat pengelogan dikonfigurasi. Contoh berikut menunjukkan entri file log pertama untuk file log W3C dengan ip Klien, Nama Pengguna, IP Server, Port Server, Metode, Batang URI, Kueri URI, Status, dan bidang Agen Pengguna diaktifkan:

#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)

Bidang yang diambil waktu diinisialisasi ketika HTTP Server API menerima byte pertama, sebelum permintaan diurai. Tanda waktu yang diambil dihentikan ketika penyelesaian pengiriman terakhir terjadi. Waktu yang diambil tidak mencerminkan waktu di seluruh jaringan. Permintaan pertama ke situs menunjukkan waktu yang sedikit lebih lama yang diambil daripada permintaan serupa lainnya karena HTTP Server API membuka file log dengan permintaan pertama.