IIS Web Loglarını Sıkıştırma & Görev Zamanlayıcı

Artık Google Analytics web analiz programlarını öldürdüğü için, pek analiz etmesek de, hata tesbiti ve 5651 sayılı kanun gereği loglarımızı saklamamız gerektiği için halen iis’te log tutmaya devam ediyoruz.

Fakat loglar yüksek trafiği olan sunucularda çok fazla yerde kaplıyor. Logları sıkıştırmak için bsd tarafında rotate_local_logs.pl‘yi kullanıyorum.

Daha önce iis tarafında logları sıkıştırmak için domain.com.vbs adlı, kısıtlı bilgimle yazdığım bir scripti kullanıyordum. Basit olarak script, tanımlanan klasörü tarıyor ve compress.domain.com.vbs adında bir dosya oluşturuyor. compress.domain.com.vbs basitçe tek tek log dosyalarının hızlı bir şekilde sıkıştırılmasını sağlıyor.

Script’in bir kusuru var, aktif log dosyasını tesbit edemiyor. Klasördeki tüm log uzantılı dosyaları sıkıştırmaya çalıştığı içinde aktif dosyayıda sıkıştırmıya çalışıyor. Bir ara bu özelliğide eklemiştim ama, bulamadım nerede olduğunu.

Bunu domain.com.vbs‘yi saat 23:00’te compress.domain.com.vbs‘i ise gece 05:00 gibi çalıştırarak aşabilirsiniz.

Windows: Başlat -> Programlar -> Donatılar -> Sistem Araçları‘na gidin ve Görev Zamanlayıcısı‘nı kullanarak önce domain.com.vbs‘yi saat 23:00’te compress.domain.com.vbs , ertesi günde compress.domain.com.vbs adında bir dosya oluşturuyor. compress.domain.com.vbs çalışıcak şekilde iki görev girmeniz yeterli olacaktır.

schtasks.exe /Create /TN "domain.com" /TR "X:vbsdomain.com.vbs" /RU System /SC daily /st 23:00
schtasks.exe /Create /TN "compress.domain.com" /TR "X:LogFilesdomain.comcompress.domain.com.vbs" /RU System /SC daily /st 03:00

How to tar and untar files in UNIX?

tar

tar -czvf folder-$(date "+%Y%m%d").tar.gz folder

untar

tar -zxvf folder-20090120.tar.gz