Http Logging <httpLogging>
Gambaran Umum
Elemen ini <httpLogging>
memungkinkan Anda mengonfigurasi IIS untuk menghasilkan entri log hanya untuk permintaan yang berhasil, permintaan yang gagal, atau keduanya. Setelah mengonfigurasi pengelogan untuk setiap situs Web di tingkat server, Anda dapat menggunakan elemen ini untuk mengaktifkan pengelogan selektif untuk URL individual. Secara default, pengelogan HTTP diaktifkan untuk semua permintaan di Internet Information Services (IIS) 7.
Anda dapat melihat file log untuk situs kapan saja untuk melihat permintaan mana yang gagal dan permintaan mana yang berhasil. Saat Anda tidak lagi ingin IIS mencatat permintaan tertentu untuk situs, nonaktifkan pengelogan untuk situs tersebut.
Kompatibilitas
Versi | Catatan |
---|---|
IIS 10.0 | Elemen <httpLogging> tidak dimodifikasi di IIS 10.0. |
IIS 8.5 | Elemen <httpLogging> tidak dimodifikasi di IIS 8.5. |
IIS 8.0 | Elemen <httpLogging> tidak dimodifikasi di IIS 8.0. |
IIS 7.5 | Elemen <httpLogging> tidak dimodifikasi dalam IIS 7.5. |
IIS 7.0 | Elemen <httpLogging> ini diperkenalkan di IIS 7.0. |
IIS 6.0 | Elemen <httpLogging> dan <logFile> elemen menggantikan properti pengelogan pada objek metabase IIS 6.0 IIsWebService . |
Siapkan
Elemen <httpLogging>
ini disertakan dalam penginstalan default IIS 7.
Bagaimana Caranya
Cara mengaktifkan pengelogan HTTP untuk situs atau aplikasi
Buka Manajer Layanan Informasi Internet (IIS):
Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:
- Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Manajer Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows 8 atau Windows 8.1:
- Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
- Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:
- Pada taskbar, klik Mulai, arahkan ke Alat Administratif, lalu klik Manajer Layanan Informasi Internet (IIS).
Jika Anda menggunakan Windows Vista atau Windows 7:
- Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
- Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
Di panel Koneksi , perluas nama server, perluas Situs, lalu navigasikan ke situs Web atau aplikasi yang ingin Anda konfigurasikan pengelogan HTTPnya.
Di panel Beranda , klik dua kali Pengelogan.
Di panel Tindakan , klik Aktifkan untuk mengaktifkan pengelogan.
Pilih format file log yang ingin Anda gunakan untuk situs atau aplikasi Anda di daftar drop-down Format , dan, jika Anda ingin mengubah lokasi default tempat IIS menyimpan file log, ketik jalur tempat Anda ingin menyimpan file log untuk situs atau aplikasi dalam kotak Direktori .
(Opsional) Jika Anda memilih W3C di daftar drop-down Format di langkah 5, klik Pilih Bidang.
(Opsional) Dalam kotak dialog Bidang Pengelogan W3C , pilih bidang W3C yang ingin Anda catat, kosongkan bidang W3C yang tidak ingin Anda catat, lalu klik OK.
Konfigurasi
Anda dapat mengonfigurasi <httpLogging>
elemen di tingkat server dalam file ApplicationHost.config dan di tingkat situs, aplikasi, atau URL dalam file Web.config yang sesuai.
Atribut
Atribut | Deskripsi | ||||||||
---|---|---|---|---|---|---|---|---|---|
dontLog |
Atribut Boolean opsional. Menentukan apakah pengelogan HTTP diaktifkan untuk permintaan yang berhasil. Permintaan dianggap berhasil jika kode statusnya kurang dari 400. Nilai defaultnya adalah false . |
||||||||
selectiveLogging |
Atribut enum opsional. Menentukan jenis permintaan mana yang akan dicatat. Atribut selectiveLogging dapat menjadi salah satu nilai yang mungkin berikut. Nilai defaultnya adalah LogAll .
|
Elemen Anak
Tidak ada.
Sampel Konfigurasi
Contoh konfigurasi berikut, ketika disertakan dalam file Web.config untuk situs atau aplikasi, mengonfigurasi pengelogan HTTP dan menentukan bahwa IIS hanya boleh mencatat permintaan yang menghasilkan kesalahan.
<configuration>
<system.webServer>
<httpLogging dontLog="false" selectiveLogging="LogError" />
</system.webServer>
<configuration>
Kode Sampel
Contoh berikut mengaktifkan pengelogan HTTP untuk situs Web bernama Contoso, dan menentukan bahwa IIS tidak boleh mencatat permintaan apa pun.
AppCmd.exe
appcmd.exe set config "Contoso" -section:system.webServer/httpLogging /dontLog:"True" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/httpLogging /selectiveLogging:"LogAll" /commit:apphost
Catatan
Anda harus memastikan untuk mengatur parameter penerapan ke apphost
saat Anda menggunakan AppCmd.exe untuk mengonfigurasi pengaturan ini. Ini menerapkan pengaturan konfigurasi ke bagian lokasi yang sesuai dalam file ApplicationHost.config.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection httpLoggingSection = config.GetSection("system.webServer/httpLogging", "Contoso");
httpLoggingSection["selectiveLogging"] = @"LogAll";
httpLoggingSection["dontLog"] = true;
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim httpLoggingSection As ConfigurationSection = config.GetSection("system.webServer/httpLogging", "Contoso")
httpLoggingSection("selectiveLogging") = "LogAll"
httpLoggingSection("dontLog") = True
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var httpLoggingSection = adminManager.GetAdminSection("system.webServer/httpLogging", "MACHINE/WEBROOT/APPHOST/Contoso");
httpLoggingSection.Properties.Item("selectiveLogging").Value = "LogAll";
httpLoggingSection.Properties.Item("dontLog").Value = true;
adminManager.CommitChanges();
Vbscript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set httpLoggingSection = adminManager.GetAdminSection("system.webServer/httpLogging", "MACHINE/WEBROOT/APPHOST/Contoso")
httpLoggingSection.Properties.Item("selectiveLogging").Value = "LogAll"
httpLoggingSection.Properties.Item("dontLog").Value = True
adminManager.CommitChanges()
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk