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/urandom
Zarejestrowany: 2008-01-07

Re: Jak ustawić filtrowanie w rsyslog

Tu masz przykłady wpisów w [b]/etc/rsyslog.conf[/b], 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

[b]/dev/snort[/b] - to kolejka tworzona poleceniem [b]mkfifio[/b] przed startem rsysloga.
Ponadto, do przeglądania logów należy używać [b]grep[/b]a i [b]egrep[/b]a - 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/urandom
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
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.010 seconds, 13 queries executed ]

Informacje debugowania

Time (s) Query
0.00011 SET CHARSET latin2
0.00011 SET NAMES latin2
0.00140 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.227.48.131' WHERE u.id=1
0.00068 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.227.48.131', 1732318956)
0.00060 SELECT * FROM punbb_online WHERE logged<1732318656
0.00068 DELETE FROM punbb_online WHERE ident='54.36.148.191'
0.00061 DELETE FROM punbb_online WHERE ident='54.36.149.70'
0.00082 SELECT topic_id FROM punbb_posts WHERE id=225875
0.00017 SELECT id FROM punbb_posts WHERE topic_id=23055 ORDER BY posted
0.00089 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=23055 AND t.moved_to IS NULL
0.00006 SELECT search_for, replace_with FROM punbb_censoring
0.00140 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=23055 ORDER BY p.id LIMIT 0,25
0.00073 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=23055
Total query time: 0.00826 s