«

»

Tem 19 2011

dhcp loglarını ayrı dosyaya yazma (syslog)

Debian'da standart olarak ISC DHCDP servisi loglarını, /var/log/messages dosyasına yazıyor. Bu da aynı dosyayı çok kalabalık hale getiriyor. DHCP loglarını ayırmak için aşağıdaki işlemler yapılabilir.

  1. DHCPD sunucusuna, logları varsayılan olarak local7 hedefine basmasını belirt. Bunun için, /etc/dhcpd.conf dosyasına alttaki satırı ekle. Bu şekilde, DHCP servisi, logları syslog'a gönderirken local7 şeklinde etiketleyerek gönderecektir.
    log-facility local7;
     
  2. Syslog servisine, local7 olarak gelen log'ları ayrı bir dosyaya yazmasını söyle. Şöyle bir satır ekliyoruz:
    local7.*            -/var/log/dhcpd/dhcpd.log
    hedef yolun önündeki "" işareti, logları anında yazmamasını, biraz bekleterek yazmasını söylüyor. Bu işaret koyulmazsa, her log etkinliğinin hepsinde dosya yeniden açılır, yazılır ve kapatılır. Bu da fazla I/O yaptığı için, performans düşmesine sebep olabilir.
     
  3. /var/log/messages dosyasına yazılan loglar arasından dhcp loglarının çıkarılmasını sağla. Bunu yapmazsan, iki dosyaya birden yazar ki, pek istenmeyen bir durumdur :) Bunun için, -/var/log/messages yazan satırı bul ve bunun önündeki direktirlere şunu ekle:
    dhcpd.none
     
  4. Log dosyasını oluştur ve ilgili servisleri yeniden başlat.
    mkdir /var/log/dhcpd/
    touch /var/log/dhcpd/dhcpd.log
    /etc/init.d/dhcp3-server restart
    /etc/init.d/sysklogd restart

     
  5. LogRotate servisi ile; log dosyasının çok büyümemesi için, bunu belirli peryotlarda bölünerek saklanmasını sağla. Bunun için, /etc/logrotate.d/ altında, dhcpd adında bir dosya oluştur ve içine şunları yaz:
    /var/log/dhcpd/dhcpd.log   #hangi dosyalar çevrilecek. birden fazlaysa, alt alta yazılabilir.
    {
      rotate 30                #kaçkere çevrilecek
      weekly                   #her bir bölüm nekadarlık log içerecek?
      missingok                #dosyada sorun varsa, kıllık yapmadan bir sonrakine geç
      create 0664 syslog adm   #yeni oluşturulan dosyanın kullanıcısı ve grubu kim olacak?
      delaycompress            #
    her seferinde, bir eskisi değil de iki eskisi sıkıştırılsın.
      compress                 #eski bölümler sıkıştırılsın
    }

    Logrotate servisi hakkında detaylı bilgi için biraz daha okuyabilirsiniz. Daha bir ton parametresi var. İnternette tonlarca kaynak mevcut.

Bad Behavior has blocked 19 access attempts in the last 7 days.