Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2011-06-14 23:19:32

  Fedaykin - Nowy użytkownik

Fedaykin
Nowy użytkownik
Zarejestrowany: 2011-03-25

Logrotate konfiguracja

Hey,

   Posiadam serwer który generuje mi sporą liczbę logów w związku z tym postanowiłem pobawić się logrotate otóż chcę go skonfigurować tak aby logi starsze niż 5 dni kompresował i przerzucał do folderu stare następnie z tamtąd usuwał mi pliki starsze niż 20 dni oto moja konfiguracja:

Kod:

/home/serwer/logs/ {
        missingok
        daily
        compress
        olddir /home/serwer/stare/
        rotate 5
}

/home/serwer/stare/ {
        missingok
        daily
        rotate 15

}

Mógł by mi ktoś doradzić czy zrobiłem to dobrze czy gdzieś udało mi się skopać?

Offline

 

#2  2011-06-19 22:28:05

  qlemik - Użytkownik

qlemik
Użytkownik
Zarejestrowany: 2007-11-27

Re: Logrotate konfiguracja

Jeśli dobrze patrze a jest jeszcze weekend to przy takiej konfiguracji logi przeniesie ci do katalogu wskazanego przez olddir i tam je skompresuje. Czyli w katalogu /home/serwer/logs/ będziesz miał tylko aktualnego loga a reszta skompresowana z 5 dni będzie w katalogu  /home/serwer/stare/.



ja bym to zrobił to tak, ale dla każdego pliku loga osobna konfiguracja:

np squid:

Kod:

/var/log/squid/access.log {
        missingok # nie wywala błędu jak brakuje pliku loga tylko leci dalej.
        daily #ja w tym miejscu  mam miesięczny ale to tylko przykład
        compress # to oznacza ze jak się wykonq logrotate to od razu kompresuje a nie czeka np 5 dni i dopiero starsze kompresuje.
        rotate 5 # trzyma tylko 5 ostatnich logów reszte wywala.
        postrotate #proponuje także zapoznać się z "prerotate"
        sciezka_do_skryptu_np: /root/skrypty/logi.sh # to będzie skrypt który wykona za nas całą robotę.
        endscript
}

a w skrypcie :

Kod:

#!/bin/bash
cp /var/log/squid/access.log.1.gz /home/serwer/stare/access.log.`date +%F`.gz #przekopiowanie loga do katalogu olddir i dodanie do nazwy daty
find /home/serwer/stare/  -mtime +20  -exec rm -f {} \; #skasowanie plików starszych niż 20 dni.

Sorry że mało składnie ale jeszcze jest weekend. Jak coś to pisz.

Polecam jeszcze
http://linuxcommand.org/man_pages/logrotate8.html

Pozdrawiam

Ostatnio edytowany przez qlemik (2011-06-19 22:31:04)

Offline

 

#3  2011-06-19 23:26:40

  Fedaykin - Nowy użytkownik

Fedaykin
Nowy użytkownik
Zarejestrowany: 2011-03-25

Re: Logrotate konfiguracja

A logi starsze niż 15 dni zostaną usunięte z katalogu stare?

Offline

 

#4  2011-06-20 07:50:12

  qlemik - Użytkownik

qlemik
Użytkownik
Zarejestrowany: 2007-11-27

Re: Logrotate konfiguracja

A logi starsze niż 15 dni zostaną usunięte z katalogu stare?

Tak

Kod:

find /home/serwer/stare/  -mtime +20  -exec rm -f {} \; #skasowanie plików starszych niż 20 dni.

a w /home/serwer/logs/
bedziesz miał z 5 ostatnich dni

Ostatnio edytowany przez qlemik (2011-06-20 07:50:42)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)