From: Şeref Tufan Şen (tufan@itu.edu.tr)
Date: Thu 20 Jun 2002 - 10:21:33 EEST
Selam,,,
> Murat Gezer (Linux) wrote:
>
> >Merhaba Arkadaslar,
> >
> >
> Günaydın,
>
> >apache icin logrotae eden bir program ariyorum. Ancak bu
> program cok buyuk loglarda sorun yaratmamali. Bu konuda
> bilgisi olan varmi
> >
> >
> >
Logrotate komutu işinize yarar. Onun dışında bir çözüme gerek yok..
/etc/logrotate.conf ve /etc/logrotate.d/apache gibi bir dosyaya
/var/log/httpd/access_log {
monthly
rotate 4
missingok
postrotate
/bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null ||
true
endscript
}
şeklinde bir kayıt eklendimi gerekli log dönüşümü yapılır. Apache loglarını
rotate ederken dikkat edilmesi gereken bir nokta rotate işlemi bittikten
sonra apache prosesine HUP veya USR1 sinyalinin gönderilmesi zorunluluğudur.
Bu sinyallerden HUP apache prosesinin tüm bağlantıları kapatıp bir nevi
kendisini yeniden başlatmasını sağlıyor. ( Proses ölmüyor sadece ilk
çalıştırılıyormuş gibi tüm işlemleri en baştan yapıyor.) USR1 sinyali ise
sadece apache'nin log dosyaları için açtığı dosyaları kapatıp yeniden
açmasına sebep oluyor. Bu durumda da varolan tüm bağlantılar kapatılıyor.
"postrotate" ve "endscript" blokları arasında kalan kill komutu bu işlem
için konulmuş.
NOT : Yukarıdaki çözüm Red Hat için geçerli. Diğer dağıtımlarda da büyük
ihtimal logrotate kullanılıyordur. Ayrıca kill komutunun yapısını
değiştirmek zorunda kalabilirsiniz...
-----------------------------------------------------------------------
Liste üyeliğiniz ile ilgili her türlü işlem için
http://liste.linux.org.tr adresindeki web arayüzünü kullanabilirsiniz.
Listeden çıkmak için: 'linux-request@linux.org.tr' adresine,
"Konu" kısmında "unsubscribe" yazan bir e-posta gönderiniz.
-----------------------------------------------------------------------