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  2013-02-27 20:11:43

  tspoko - Użytkownik

tspoko
Użytkownik
Skąd: Świętokrzyskie
Zarejestrowany: 2009-01-23

Jak ustawić filtrowanie w rsyslog

Witam
Debian Wheezy 64 bity. Mam następujący problem - mam kartę telewizyjną Leadtek TV2000 XP. Ładnie chodzi - choć trzba było doinstalować firmware. Niestety moje logi nieustannie są bombardowane setkami takich komunikatów:

Kod:

kernel: [   12.254053] cx88[0]: Calling XC2028/3028 callback

Pliki: kernel.log, syslog, messages są nimi zawalone - zupełnie zaciemnia to obraz zdarzeń w systemie. Chodzi mi o to, czy moża tak skonfigurować rsyslog, żeby nigdzie nie wpisywał takich komunikatów (w komunikatach zmieniają się tylko cyfry w nawiasach kwadratowych). Albo przynajmniej żeby zapisywał co 100?

Drugi problem w logach:

Kod:

gnome-session[7191]: DEBUG(+): Enabling debugging

Po tym komunikacie następuje szereg podobnych np:

Kod:

gnome-session[7191]: DEBUG(+): GsmUtil: Looking in .... 
gnome-session[7191]: DEBUG(+): GsmManager ....

Włącza się logowanie na poziomie debugowania? Czy to jest standardowe ustawienie w wheezym? Czy jest to do czegoś pomocne czy służy jednak głównie przy jakiś poważniejszych błędach? Jak to ewentualnie wyłączyć/zmienić?
Od wczoraj sam syslog ma rozmiar 3,1MB, co prawda restartowałem kompa kilkanaście razy - ale jednak wydaje mi się, że to jak na niezbyt przepracowany desktop sporo.

Ostatnio edytowany przez tspoko (2013-02-27 20:12:53)

Offline

 

#2  2013-02-27 21:33:16

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Jak ustawić filtrowanie w rsyslog

Tu masz przykłady wpisów w /etc/rsyslog.conf, które u mnie działają:

Kod:

:msg, contains, "grsec" /var/log/grsec/grsec.log
:msg, contains, "grsec" ~
:msg, contains, "PAX" /var/log/grsec/pax.log
:msg, contains, "PAX" ~
:msg, contains, "avc" /var/log/selinux/avc.log
:msg, contains, "avc" ~

Kod:

 if $programname == 'snort' then |/dev/snort

/dev/snort - to kolejka tworzona poleceniem mkfifio przed startem rsysloga.
Ponadto, do przeglądania logów należy używać grepa i egrepa - działają zawsze - i pierońsko skutecznie. :D

Ostatnio edytowany przez Jacekalex (2013-02-27 21:34:51)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2013-02-27 23:29:55

  tspoko - Użytkownik

tspoko
Użytkownik
Skąd: Świętokrzyskie
Zarejestrowany: 2009-01-23

Re: Jak ustawić filtrowanie w rsyslog

To od początku: pierwszy wpis z Twojego posta w rsyslog-u tworzy nowy plik z logami, w który wrzuca komunikaty, w których wykryje tekst wzięty w cudzysłów - to działa. Druga linia niestety już nie kumam co ma na celu. Na mój rozum powinna powodować, że logowanie danego komunikatu będzie się odbywać tylko do tego jednego pliku? Jeśli tak to u mnie nie działa - oprócz logowania do osobnego pliku wrzuca komunikaty jeszcze w każdy inny plik loga co zawsze.
Czemu służy w takim wypadku ten kod:

Kod:

if $programname == 'snort' then |/dev/snort

Komepletnie już tego nie ogarniam... :)

Offline

 

#4  2013-02-28 04:52:43

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Jak ustawić filtrowanie w rsyslog

Pierwszy przykład filturuje po kawałku stringu, np grsec - jeśli wyjdzie w dowolnej waidomości.

if $progname {program}  - to dopasowuje po nazwie programu, składnia if, then, tak, jak w bashu czy kiedyś basicu, i wszystkich językach programowania.

Tu masz więcej przykładów:
http://wiki.rsyslog.com/index.php/Filtering_by_program_name
http://www.rsyslog.com/doc/rsyslog_conf_filter.html
http://www.rsyslog.com/tag/some-core-recipies/
http://wiki.rsyslog.com/index.php/LighttpdVhostErrorlogs


Pozdrawiam
;-)

Ostatnio edytowany przez Jacekalex (2013-02-28 04:55:52)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2013-02-28 17:36:33

  tspoko - Użytkownik

tspoko
Użytkownik
Skąd: Świętokrzyskie
Zarejestrowany: 2009-01-23

Re: Jak ustawić filtrowanie w rsyslog

Ok mniej więcej kumam - pomogło jak się z tym trochę przespałem i poczytałem man-a. Więc teraz wpisane mam tak:

Kod:

:msg, contains, "Calling XC2028/3028" /var/log/telewizyjna
:msg, contains, "Calling XC2028/3028" ~

Tworzony jest plik "telewizyjna" z logami, natomiast dalej te logi są również umieszczane w pozostałych plikach: messages, dmesg, kernel.log, system.log. Czy to drugie polecenie nie powinno właśnie powodować, że komunikaty nie są logowane do tych plików? Czy można to jeszcze jakoś inaczej skonfigurować?

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)