Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Jim van de Erve
Anda dapat mengelola jumlah ruang disk server yang digunakan file log Internet Information Services (IIS) dengan menggunakan kompresi, penyimpanan jarak jauh, dan penghapusan skrip.
Gambaran Umum
File log yang dihasilkan IIS dapat, seiring waktu, menggunakan sejumlah besar ruang disk. Log berpotensi mengisi seluruh hard drive. Untuk mengurangi masalah ini, banyak pengguna menonaktifkan pengelogan sepenuhnya. Untungnya, ada alternatif untuk melakukannya, seperti berikut ini:
- Aktifkan pemadatan folder
- Memindahkan folder log ke sistem jarak jauh
- Hapus file log lama berdasarkan skrip.
Mitigasi di atas dijelaskan pada bagian di bawah ini. Anda mungkin juga ingin melakukan hal berikut untuk mengontrol penggunaan disk:
- Batasi ukuran log dengan menghilangkan bidang properti yang tidak perlu
- Membuat log terpisah untuk situs web dan aplikasi
- Pertahankan sumber daya memori dengan menggunakan pengelogan biner terpusat.
Untuk informasi selengkapnya, lihat Mengonfigurasi Pengelogan di IIS.
Aktifkan Pemadatan Folder
File log IIS dikompresi hingga sekitar 2% dari ukuran aslinya. Aktifkan pemadatan file log sebagai berikut. Anda harus menjadi administrator untuk melakukan prosedur ini.
- Klik ikon Pengelola File di bilah ikon.
- Pindah ke folder yang berisi file log IIS (secara default,
%SystemDrive%\inetpub\logs\LogFiles
). - Klik kanan pada folder dan klik Properti.
- Pada tab Umum dari halaman Properti , klik Tingkat Lanjut.
- Klik Padatkan isi untuk menghemat ruang disk, lalu klik OK.
- Klik Terapkan, lalu pilih apakah hanya akan memadatkan folder, atau folder, subfoldernya, dan filenya.
- Klik OK. Verifikasi bahwa konten folder dikompresi. Nama folder dan nama setiap file harus berwarna biru, dan ukuran file kompresi harus lebih kecil.
Ini adalah cara sederhana untuk menurunkan penggunaan disk. Namun, ini bukan solusi akhir, karena penggunaan disk masih tumbuh dari waktu ke waktu, dan akhirnya dapat mengisi hard drive.
Jika folder sudah berisi sejumlah besar data, dibutuhkan waktu beberapa saat bagi komputer untuk memadatkan isinya. Perhatikan juga bahwa proses satu kali ini dapat memperlambat komputer selama pemadatan awal, jadi jika ini adalah server produksi, lakukan operasi ini di luar jam sibuk untuk mencegah degradasi layanan.
Memindahkan Folder Log ke Sistem Jarak Jauh
File log IIS disimpan secara default di %SystemDrive%\inetpub\logs\LogFiles
folder server IIS Anda. Folder dikonfigurasi di properti Direktori pada halaman Pengelogan untuk server atau situs individual. Untuk mengurangi masalah penggunaan disk log, Anda dapat memindahkan file log IIS Anda ke folder di server lain yang memiliki lebih banyak ruang. Server ini dapat berada di domain yang sama dengan server IIS lokal, atau domain yang berbeda. Anda dapat menyimpan file log dari jarak jauh baik untuk seluruh server atau untuk situs Web individual.
Solusi ini dapat membantu keamanan sistem, karena jika hard drive lokal mengalami crash, data log masih tersedia di penyimpanan jarak jauh. Selain itu, file log dapat dikonsumsi oleh sistem analisis.
Ubah lokasi file log IIS menjadi berbagi jarak jauh sebagai berikut:
Buat direktori file log di server jarak jauh yang berada di domain yang sama dengan server Web lokal Anda yang menjalankan IIS.
Di halaman Properti folder, pada tab Berbagi , klik Bagikan sehingga direktori dibagikan. Pada tab Keamanan , tetapkan grup dan pengguna dengan izin yang sesuai. Pastikan bahwa grup dan pengguna yang sesuai dapat membaca dan menulis ke file log.
Untuk informasi selengkapnya, lihat Mengonfigurasi Izin untuk Pengelogan Jarak Jauh.
Catatan: Jika Anda ingin menulis file log ke server jarak jauh di domain lain, lihat Menyiapkan Sesi Null untuk Pengelogan Lintas Domain.
Buka Manajer IIS di server Web lokal Anda.
Di Manajer IIS, di panel Koneksi , klik server atau situs Web.
Klik dua kali Pengelogan.
Dalam kotak teks Direktori , masukkan jalur UNC lengkap direktori yang Anda buat di server jarak jauh. Misalnya, ketik \servername\Logs, di mana "servername" mewakili nama server jarak jauh, dan "Log" mewakili nama berbagi tempat file log disimpan.
Di panel Tindakan , klik Terapkan, lalu klik OK. Semua situs Web dalam direktori harus mulai mencatat data ke berbagi jarak jauh.
Untuk informasi selengkapnya, lihat Pengelogan Jarak Jauh.
Menghapus File Log Lama menurut Skrip
Anda dapat mengontrol penggunaan disk file log dengan menjalankan skrip yang secara otomatis menghapus file log yang lebih lama dari usia tertentu. Menjalankan skrip ini dalam tugas terjadwal akan menjaga masalah pengisian disk tetap terkendali tanpa pemeliharaan konstan.
VBScript berikut akan memeriksa usia setiap file log dalam folder dan akan menghapus file log apa pun yang lebih lama dari usia yang ditentukan. Untuk menyesuaikan skrip untuk tujuan Anda, cukup ubah nama dan jalur folder di baris 1 skrip, dan ubah usia maksimum ke nilai yang diinginkan dalam hari, di baris 2.
sLogFolder = "c:\inetpub\logs\LogFiles"
iMaxAge = 30 'in days
Set objFSO = CreateObject("Scripting.FileSystemObject")
set colFolder = objFSO.GetFolder(sLogFolder)
For Each colSubfolder in colFolder.SubFolders
Set objFolder = objFSO.GetFolder(colSubfolder.Path)
Set colFiles = objFolder.Files
For Each objFile in colFiles
iFileAge = now-objFile.DateCreated
if iFileAge > (iMaxAge+1) then
objFSO.deletefile objFile, True
end if
Next
Next
Skrip di atas akan memindai semua subfolder, sehingga akan memproses log untuk SEMUA situs di dan di bawah folder yang ditentukan. Jika Anda ingin membatasi proses hanya untuk satu situs, ubah jalur dengan tepat.
Untuk menjalankan skrip secara manual, jalankan skrip berikut di baris perintah administrator: cscript.exe c:\scripts\retentionscript.vbs
Menggunakan skrip untuk menghapus file log adalah solusi jangka panjang dan andal untuk masalah file log yang menggunakan ruang disk. Jika Anda mengotomatiskan proses, seperti yang ditunjukkan di bawah ini, proses tersebut tidak memerlukan pemeliharaan konstan.
Menjalankan skrip sebagai tugas terjadwal
Anda dapat mengotomatiskan tugas menghapus file log dengan skrip dengan membuat jadwal tugas Windows untuk menjalankan skrip secara berkala. Anda dapat menjadwalkan skrip untuk dijalankan kapan saja menggunakan Penjadwal Tugas Windows. Cara Anda mengonfigurasi tugas terjadwal harus dikoordinasikan dengan konfigurasi opsi rollover file log.
- Buka Manajer Server, klik menu Alat , lalu klik Penjadwal Tugas.
- Di panel Tindakan dari kotak dialog Penjadwal Tugas , klik Buat Tugas.
- Pada tab Umum dari kotak dialog Buat Tugas , masukkan nama untuk tugas tersebut, seperti "Hapus File Log". Atur properti keamanan, memilih akun pengguna dengan hak istimewa yang memadai untuk menjalankan skrip.
- Klik tab Pemicu , lalu klik Baru. Dalam kotak dialog Pemicu Baru , atur Mulai tugas ke Sesuai jadwal. Pilih periodisitas, misalnya, Harian. Masukkan Tanggal mulai , pilih pengaturan tingkat lanjut lainnya, dan pastikan Diaktifkan dipilih jika Anda siap untuk memulai jadwal. Klik OK.
- Klik tab Tindakan , lalu klik Baru. Dalam kotak dialog Tindakan Baru , pilih nilai untuk Tindakan, dalam hal ini, Mulai program. Di Program/skrip, masukkan cscript, dan di Tambahkan argumen (opsional), masukkan jalur dan nama file skrip, misalnya,
C:\iis\Log\_File\_Deletion.vbs
. Klik OK. - Klik OK.
- Verifikasi bahwa tugas telah ditambahkan ke panel Tugas Aktif .
- Klik kanan pada tugas baru, dan pilih Jalankan.
- Navigasi ke folder tempat skrip berjalan, dan verifikasi bahwa file log yang sesuai telah dihapus.
- Navigasi kembali ke Penjadwal Tugas, klik kanan pada tugas, dan klik Akhiri sehingga status kembali ke Siap dan tugas siap untuk eksekusi terjadwal.