struktur HTTP_LOGGING_INFO (http.h)
Struktur HTTP_LOGGING_INFO digunakan untuk mengaktifkan pengelogan sisi server pada Grup URL atau pada sesi server.
Struktur ini harus digunakan saat mengatur atau mengkueri HttpServerLoggingProperty pada Grup URL atau sesi server.
Sintaks
typedef struct _HTTP_LOGGING_INFO {
HTTP_PROPERTY_FLAGS Flags;
ULONG LoggingFlags;
PCWSTR SoftwareName;
USHORT SoftwareNameLength;
USHORT DirectoryNameLength;
PCWSTR DirectoryName;
HTTP_LOGGING_TYPE Format;
ULONG Fields;
PVOID pExtFields;
USHORT NumOfExtFields;
USHORT MaxRecordSize;
HTTP_LOGGING_ROLLOVER_TYPE RolloverType;
ULONG RolloverSize;
PSECURITY_DESCRIPTOR pSecurityDescriptor;
} HTTP_LOGGING_INFO, *PHTTP_LOGGING_INFO;
Anggota
Flags
Struktur HTTP_PROPERTY_FLAGS yang menentukan apakah properti ada.
LoggingFlags
Bendera pengelogan opsional mengubah perilaku pengelogan default.
Ini bisa menjadi satu atau beberapa nilai HTTP_LOGGING_FLAG berikut ini:
SoftwareName
String nama perangkat lunak opsional yang digunakan dalam pengelogan jenis W3C. Nama ini tidak digunakan untuk jenis pengelogan lainnya. Jika parameter ini NULL, API Server HTTP mencatat string default.
SoftwareNameLength
Panjang, dalam byte, dari nama perangkat lunak. Panjang tidak boleh lebih besar dari MAX_PATH.
Jika anggota SoftwareNameadalah NULL, panjang ini harus nol.
DirectoryNameLength
Panjangnya, dalam byte, dari nama direktori. Panjangnya tidak boleh lebih besar dari 424 byte.
DirectoryName
Direktori pengelogan tempat file log dibuat. String direktori harus merupakan jalur yang sepenuhnya memenuhi syarat termasuk huruf kandar.
Aplikasi dapat menggunakan jalur UNC ke komputer jarak jauh untuk mengaktifkan pengelogan UNC.
Format
Anggota enumerasi HTTP_LOGGING_TYPE yang menentukan salah satu format file log berikut.
Fields
Bidang yang dicatat saat format diatur ke W3C. Ini bisa menjadi satu atau beberapa nilai HTTP_LOG_FIELD_ Constants .
Ketika format pengelogan adalah W3C, aplikasi harus menentukan bidang log jika tidak, tidak ada bidang yang dicatat.
pExtFields
Dicadangkan. Atur ke 0 (nol) atau NULL.
NumOfExtFields
Dicadangkan. Atur ke 0 (nol) atau NULL.
MaxRecordSize
Dicadangkan. Atur ke 0 (nol) atau NULL.
RolloverType
Salah satu anggota enumerasi HTTP_LOGGING_ROLLOVER_TYPE berikut yang menentukan kriteria untuk rollover file log.
RolloverSize
Ukuran maksimum, dalam byte, setelah itu file log digulirkan. Nilai HTTP_LIMIT_INFINITE menunjukkan ukuran yang tidak terbatas. Nilai minimum tidak boleh lebih kecil dari HTTP_MIN_ALLOWED_LOG_FILE_ROLLOVER_SIZE (1024 * 1024).
Bidang ini hanya digunakan untuk jenis rollover HttpLoggingRolloverSize dan harus diatur ke nol untuk semua jenis lainnya.
Ketika jenis rollover adalah HttpLoggingRolloverSize, aplikasi harus menentukan ukuran maksimum untuk file log.
pSecurityDescriptor
Deskriptor keamanan yang diterapkan ke direktori file log dan semua sub-direktori. Jika anggota ini adalah NULL, ACL default sistem digunakan atau ACL diwarisi dari direktori induk.
Keterangan
Properti HttpServerLoggingProperty menetapkan salah satu dari empat jenis pengelogan sisi server: HttpLoggingTypeW3C, HttpLoggingTypeIIS, HttpLoggingTypeNCSA, atau HttpLoggingTypeRaw. Ketika properti ini diatur pada sesi server, properti ini berfungsi sebagai bentuk pengelogan terpusat untuk semua grup URL di bawah sesi server tersebut. Permintaan yang dirutekan ke salah satu grup URL di bawah sesi server dicatat dalam satu file log terpusat. Parameter konfigurasi untuk file log diteruskan dalam struktur HTTP_LOGGING_INFO dalam panggilan ke HttpSetServerSessionProperty.
Ketika properti ini diatur pada Grup URL, pengelogan hanya dilakukan pada permintaan yang dirutekan ke Grup URL. File log dibuat ketika permintaan tiba di Grup URL atau sesi server, file tersebut tidak dibuat saat pengelogan dikonfigurasi.
Aplikasi harus memastikan bahwa direktori yang ditentukan dalam anggota DirectoryName unik.
Nama file log didasarkan pada jenis rollover yang ditentukan. Tabel berikut ini memperlihatkan konvensi penamaan untuk file log.
Format | Jenis rollover | Pola nama file |
---|---|---|
Microsoft IIS Log Format | Ukuran | inetsvnn.log |
Per jam | inyymmddhh.log | |
Harian | inyymmdd.log | |
Mingguan | inyymmww.log | |
Bulanan | inyymm.log | |
Format File Log Umum NCSA | Ukuran | ncsann.log |
Per jam | ncyymmddhh.log | |
Harian | ncyymmdd.log | |
Mingguan | ncyymmww.log | |
Bulanan | ncyymm.log | |
Format File Log Yang Diperluas W3C | Ukuran | extendnn.log |
Per jam | exyymmddhh.log | |
Harian | exyymmdd.log | |
Mingguan | exyymmww.log | |
Bulanan | exyymm.log |
Huruf yy, mm, ww, dd, hh, dan nn dalam tabel mewakili digit berikut:
- yy: Representasi dua digit tahun ini.
- mm: Representasi dua digit bulan.
- ww: Representasi dua digit dalam seminggu.
- dd: Representasi dua digit hari itu.
- hh: Representasi dua digit jam dalam notasi 24 jam.
- nn: Representasi dua digit dari urutan numerik.
Harap dicatat bahwa dalam HTTP versi 2.0 API, HttpSendHttpResponse dan HttpSendResponseEntityBody telah direvisi untuk memungkinkan aplikasi melewati struktur HTTP_LOG_FIELDS_DATA sehingga respons dapat dicatat. Mengatur properti HttpServerLoggingProperty pada sesi server atau grup URL tidak berarti bahwa respons HTTP dicatat. Pengelogan di grup URL atau sesi server tidak akan terjadi kecuali panggilan ke HttpSendResponseEntityBody dan HttpSendHttpResponse menyertakan struktur HTTP_LOG_FIELDS_DATA opsional. Untuk informasi selengkapnya, lihat topik HTTP_LOG_FIELDS_DATA .
Untuk informasi tentang format file log, lihat topik Format File Log IIS .
Persyaratan
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Header | http.h |