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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witajcie.
Chciałbym się dowiedzieć, w jaki sposób mogę przeglądać wszystkie logi w czasie rzeczywistym. Czego muszę użyć aby to było wykonywalne z poziomu SSH? Korzystam z systemu Debian 6
Offline
Przykładowo:
mkfifo /dev/logi
chmod 644 /dev/logi
Coś takiego trzeba odpalić przed startem sysloga (rsysloga), a potem w konfigu rsysloga, przykładowo:
*.*;auth,authpriv.none,cron.none |/dev/logi
Które logi mają iść przez kolejkę /dev/logi - można ustalić.
A potem:
cat /dev/logi
i lecą na żywo w terminalu, po ssh też to działa.
Uprawnienia do kolejki /dev/logi - do ustalenia.
RTFM:
man rsyslog.conf
man chmod
To jest rozwiązanie systemowe, a jeśli jednorazowo, można:
tail -f /var/log/{plik_logu}
i też będzie leciał na konsolę.
Pozdro
;-)
Offline
No tak - wszystko pięknie ładnie poszło aż do momentu:
*.*;auth,authpriv.none,cron.none |/dev/logi
W konsoli wyskoczyło coś takiego:
-bash: *.*: command not found -bash: /dev/logi: Permission denied -bash: auth,authpriv.none,cron.none: command not found
O c tu chodzi?
Offline
[quote=Rolej]No tak - wszystko pięknie ładnie poszło aż do momentu:
*.*;auth,authpriv.none,cron.none |/dev/logi
W konsoli wyskoczyło coś takiego:
-bash: *.*: command not found -bash: /dev/logi: Permission denied -bash: auth,authpriv.none,cron.none: command not found
O c tu chodzi?[/quote]
*.*;auth,authpriv.none,cron.none |/dev/logi
dopisz to do pliku ( /etc/rsyslog.conf ) w sekcji #RULES#
i zresetuj sysloga
Offline
Oczywiście że można, /dev/logi - to tzw kolejka fifo, zachowuje się jak normalny plik w systemie.
RTFM:
man mkfifo
Ostatnio edytowany przez Jacekalex (2013-07-01 14:06:04)
Offline
Nawet działa tylko te logi są w formie:
2013-07-01T14:36:07.250889+02:00 morfikownia su[29658] Successful su for root by morfik
Da radę jakoś datę zmienić, np do formatu: 2013-07-01 14:36:07 ?
Offline
Nie wiem, czy format daty można zmienić w rsyslog.conf , można natomiast wykombinować regexa, który wyczesze z loga, co trzeba. :D
Sznurek:
http://forum.dug.net.pl/viewtopic.php?id=22977
Samą datę zmienić, to awk dałby radę.
Ostatnio edytowany przez Jacekalex (2013-07-01 15:31:35)
Offline
shift+page up/page down
Offline
To powiedzcie jeszcze jak do:
tail -f /file | gawk '{ print $1,$4,$8,$11 }'
dopiąć ccze, bo coś mi nie wychodzi...
Ostatnio edytowany przez loop (2013-07-01 20:48:07)
Offline
Mi też nie wychodzi, ale ewentualnie, jak zatrudniłeś gawk, to możesz tam dorzucić kody kolorów, chyba da radę, albo [url=http://perldoc.perl.org/Term/ANSIColor.html]perlem[/url]. :D
Ostatnio edytowany przez Jacekalex (2013-07-01 22:17:06)
Offline
[quote=Jacekalex]Mi też nie wychodzi[/quote]
A mi wychodzi.
Offline
[quote=azhag]A mi wychodzi.[/quote]
No nie bądź taaaaaki - poooowiedz jak ? pliizzz :D
Offline
Tak jak było:
tail -f plik | awk '{print $2,$3}'
Offline
Ale jak do tego ccze dopiąć? Bo tak "na chama":
tail -f plik | awk '{print $2,$3}' | ccze tail -f plik | ccze | awk '{print $2,$3}'
nie działa :(
Offline
No to pętelka:
tail -f ~log/syslog | while read line; do echo $line | ccze | awk '{print $2,$3,$4}'; done
Offline
No teraz to jest elegancko :)
Dziękuję
Offline
*.*;auth,authpriv.none,cron.none - tutaj są zapisane pliki logów jakie ma wyświetlać tak? Jeżeli tak to można dopisać logi innych aplikacj (np.TS3)
Offline
[quote=Rolej]*.*;auth,authpriv.none,cron.none - tutaj są zapisane pliki logów jakie ma wyświetlać tak? Jeżeli tak to można dopisać logi innych aplikacj (np.TS3)[/quote]
Do "np TS3" jest "np forum TS", na którym widać, że TS3 [url=http://forum.teamspeak.com/showthread.php/71966-Servers-version-3-0-1-3-0-2-pre2]cośtam[/url] do sysloga wysyła.
Jak jest problem z jakimś programem, to konkretnie, a nie "np".
Ostatnio edytowany przez Jacekalex (2013-07-25 11:27:57)
Offline
No to konkretniej dam.
Czy do tego można dopisać logi z:
Apache2 (access.log),
MySQL,
proftpd
fail2ban
Jeżeli tak to wystarczy do tego - *.*;auth,authpriv.none,cron.none - dopisać nazwe pliku czy w ostatniej linijce w Rules coś dodawać?
Ostatnio edytowany przez Rolej (2013-07-25 12:54:58)
Offline
Apache ma swoje logi w /var/log/apache, MYSQL siedzi w /var/log/mysql, Proftpd w /var/log/proftpd.
Każdą z tych usług możesz przestawić, żeby logi szły również przez sysloga, jednak jest to o tyle niepraktyczne, że tych logów są ogromne ilości.
W dodatku logi Apacha i Proftpd możesz analizować przez Awstats, o ile mają odpowiedni format, a serwera Mysql nie wystawia się zazwyczaj na widok publiczny, żeby potem była konieczność śledzenia logów, raczej mtop czy mytop do wyświetlania zapytań SQL, czy Mysqltuner.
Failban natomiast też ma swój plik loga, można też do Sysloga (wszystko masz w pliku konfiguracyjnym),
a przy okazji sam Failban jest częściowo psu na budę, Twój firewall potrafi to samo, co failban, tylko znacznie skuteczniej.
Słowa kluczowe:
Ipset, Iptables, CONNLIMIT, HASHLIMIT, RECENT.
Jeśli do socketu, jak napisałem gdzieś tam wyżej, to tak w konfigu rsyslog.conf:
*.*;auth,authpriv.none,cron.none |/gdzie/jest/socket
W ogóle radzę się zainteresować konfiguracją rsysloga, wszystko jest w manie i dokumentacji.
Sznurek: http://wiki.rsyslog.com/index.php/Main_Page
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2013-12-15 09:57:08)
Offline
http://www.debian.pl/entries/246-Jak-na-bieżąco-oglądać-logi-systemowe
Offline
Time (s) | Query |
---|---|
0.00011 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00107 | 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='3.144.31.64' WHERE u.id=1 |
0.00069 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.144.31.64', 1732221067) |
0.00061 | SELECT * FROM punbb_online WHERE logged<1732220767 |
0.00066 | DELETE FROM punbb_online WHERE ident='18.217.208.220' |
0.00044 | 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=23834 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00354 | 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=23834 ORDER BY p.id LIMIT 0,25 |
0.00078 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=23834 |
Total query time: 0.008 s |