Saya baru saja menemukan bahwa IIS membangun log tanpa batas dan tampaknya tidak ada pengaturan IIS yang secara otomatis akan membersihkan file log lama. Apa cara terbaik untuk menjaga log IIS saya terkendali sehingga tidak mengisi seluruh hard drive?
20
Jawaban:
Anda harus menjalankan tugas yang dijadwalkan untuk melakukannya. Inilah skrip Powershell yang seharusnya berfungsi.
Ini harus membersihkan apa pun yang terakhir dimodifikasi lebih dari 30 hari yang lalu. Ubah jalur di baris pertama ke mana pun file log Anda disimpan. Ubah juga -30 hingga seberapa lama Anda ingin menyimpan file. -30 berarti Anda akan menghapus sesuatu yang lebih lama dari 30 hari.
Anda dapat melihat artikel ini yang memperlihatkan properti berbeda untuk objek FileInfo jika Anda tidak ingin menggunakan LastWriteTime.
sumber
Get-ChildItem *.* -include *.log
Anda dapat membuat sendiri, tetapi saya percaya beberapa orang pintar telah menulis ini untuk Anda. Lihat IISLogs & IISLogs Lite!
Jika semua yang Anda lakukan adalah menghapus log, maka Anda dapat mematikan pencatatan jika tidak diperlukan! Anda akan menghemat banyak I / O server Anda!
sumber
Saat ini saya melakukan ini menggunakan skrip file batch yang sangat sederhana:
Saya juga membuat entri Tugas Terjadwal untuk meluncurkannya setiap hari dan bahkan mengaktifkan fitur kompresi file pada folder itu: semua hal ini bersama-sama memperbaiki masalah saya dengan file IIS untuk selamanya.
Penjelasan switch dalam file batch:
Jika Anda mencari alternatif Powershell yang layak , lihat jawaban lain ini : untuk saran lain tentang cara mengurangi folder IIS LogFiles dengan benar, lihat pos ini .
sumber
Nah, jika Anda ingin membersihkannya secara teratur, mengapa Anda tidak menonaktifkan permintaan login di IIS? Anda dapat menggunakan sesuatu seperti google analytics atau layanan lain, saya melihat banyak orang yang ingin menghindari sakit kepala dengan log IIS yang memengaruhi kinerja dan menghabiskan semua ruang disk tetapi semuanya tergantung pada kebutuhan Anda tentunya.
sumber
Microsoft menyarankan skrip di situs webnya .
Di bawah ini adalah versi modifikasi yang saya gunakan untuk kebutuhan saya.
Perhatikan bahwa saya telah berubah dari "DateCreated" menjadi "DateLastModified" karena tanggal yang berlawanan secara intuitif dapat lebih lambat dari yang terakhir diubah, seperti halnya dengan file yang disalin. Anda mungkin tidak ingin menghapus file yang baru saja diperbarui.
Kemudian jalankan dengan menggunakan cscript.exe (misalnya,
cscript.exe d:\scripts\logRetentionScript.vbs
).sumber
Buat tugas terjadwal di server. Di bagian tindakan, Anda ingin:
Berikan jadwal harian atau mingguan. Selesai
sumber