Każdy administrator zna problem zapchanej skrzynki mailowej. Nie jest to tak naprawdę zapchana skrzynka przez maile od niezadowolonych klientów. Czasami po powrocie z urlopu nie jesteśmy w stanie się odgrzebać z informacji, które zawiera nasza skrzynka z powodu logów, jakie na nią napływają. Większość z nich to logi systemowe. Jest ich mnóstwo. Logi crona, baz danych, nagios. bacula, firewall’e… Około tysiąca maili na
dzień to norma. Najgorsze jest to, że większość z nich jest nam zupełnie niepotrzebna. Jak sobie poradzić z niechcianymi logami? Sprawa jest dość prosta, tylko nie każdy zdaje sobie sprawę z istnienia tego świetnego narzędzia. Logwatch jest jednym z potężniejszych analizatorów logów. Dzięki niemu tworzony jest raport dla admina, z informacją, co dzieje się w naszych systemach. Oczywiście, otrzymujemy go na maila, nie musimy przegrzebywać każdego z serwerów osobno, aby uzyskać interesujące nas informacje. Logwatch należy do wyrzutków. Ludzie go niedoceniają, a ma bardzo dużo ciekawych funkcji, które mogą się przydać niejednemu adminowi. Konfiguracja też jest trywialna – wielopoziomowa. W systemie jest kilka ścieżek, w których znajdziemy pliki odpowiedzialne za konfiguracje naszego kombajnu. To, co mamy po instalacji w domyśle, oczywiście wystarczy, aby rozpocząć pracę i przy starcie nie walnie nam błędem, aczkolwiek, jeżeli chcemy, aby nasz Logwatch dał z siebie wszystko będziemy musieli się nieco postarać. Oto ścieżki w jakich go znajdziemy:
- /usr/share/logwatch/default.conf/logwatch.conf – główny plik konfiguracyjny, zawiera ustawienia dotyczące raportów, ich formatki oraz ustawienia katalogów, ale nie zmieniamy ich tu;
- /etc/logwatch/conf/logwatch.conf – plik do zmiany ustawień;
- /usr/share/logwatch/default.conf/logfiles/ – logi konkretnych aplikacji, usług i serwerów (np.: HTTP, SSH, Samba, apt, itp);
- /usr/share/logwatch/default.conf/services/ – ustawienia usług, które piszą w tym samym czasie do tego samego pliku (np.: dmesg, messages, boot)
- /usr/share/logwatch/default.conf/*
- /usr/share/logwatch/dist.conf/*
- /etc/logwatch/conf/*
Uruchomienie polecenia logwatch wygeneruje nam raport w zależności od tego, jakie ustawienia w plikach konfiguracyjnych mamy. Zostanie on pokazany w konsoli.
Oto część takiego raportu.
Raporty generowane są za pomocą skryptu znajdującego się w cronie.
/etc/cron.daily/logwatch
Jeszcze trochę i będziemy mogli czytać urocze logi rano przy kawie i ciastach. Jeżeli chcemy rozszerzyć sprawdzanie logów o inne pliki należy utworzyć plik w katalogu:
/etc/logwatch/conf/logfiles/
i umieścić z nim namiary na konkretne pliki.
# konfiguracja dla niestandardowych plików LogFile = /var/log/somefile.log
Jeżeli na szybko chcemy przetestować zmiany i wysłać logi na maila oczywiście musimy odpalić komendę logwatcha z odpowiednim parametrem. Robimy to oczywiście, jako root, lub z poleceniem sudo:
logwatch --mailto=user@domain.pl
Teraz raport zostanie wysłany na maila, który zostanie podany z poleceniu. Oczywiście, aby taki mail został wysłany musimy mieć skonfigurowanego Postfixa z SMTP. Aby takiego maila wprowadzić na stałe edytujemy plik:
/etc/log.d/logwatch.conf
I wprowadzamy tak naszego maila:
MailTo = user@domain.pl
Owszem, nie są to wszytskie opcje logwatach, ale aby opisać jego wszystkie możliwości trzeba by było trochę więcej czasu. Mam nadzieję, że taki tutorial wystarczy Wam na początek i sprawi, że sięgniecie po to narzędzie i postaracie się je zgłębić już na własną rękę.
Miłego logowania!