|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : abrasha shapirus 2:550/4077.940 31 Dec 2004 22:20:20 To : Andrew V Scherbacov Subject : ulogd + perl -------------------------------------------------------------------------------- 31 Дек 04, Andrew V Scherbacov --> Abrasha Shapirus AVS>>> есть такая задумка: хочу научить ulog передавать данные AVS>>> непосредственно демону, написанному на перле. то есть, не AVS>>> парсить периодически вывод ulogd (ulog-acctd), а AVS>>> непосредственно в программе, по приходу информации о пакете, AVS>>> обрабатывать ее согласно моим потребностям. as>> а почему бы все-таки не парсить файл? вроде как проще и надежнее as>> получается. а потом в БД складывать. у меня именно так и сделано as>> -- с августа месяца работает себе, по крону вызывается и не as>> жужит. AVS> у меня тоже именно так сейчас и работает. но при интенсивном трафике, AVS> а сейчас этот хост роутит 5 _реальных_ сетей с немалым трафиком в AVS> каждой, в момент парсинья файла нехило нагружается и память и AVS> процессор: к вечеру размер файла зашкаливает за десятки Мб. хм, так а почему бы его чаще не парсить? скрипт прост: ============== my $logfile = '/var/log/ulog-acctd/account.log'; my $pidfile = '/var/run/ulog-acctd.pid'; open PID, "<$pidfile" or die "can't open pidfile: $!"; my $pid = <PID>; chomp $pid; close PID; kill 'STOP', $pid or die "can't kill $pid: $!"; # читаем файл, разгребаем и суем в БД unlink $logfile or die "can't delete $logfile: $!"; kill 'CONT', $pid or die "can't kill $pid: $!"; ============== вызывать можно часто, смотря сколько там трафика. AVS> можно, конечно, период ротации файла ulog'а уменьшить с 24 часов до AVS> 2-3, но это, половинчатое решение... почему? вполне себе решение :). я бы вообще до получаса уменьшил или даже еще сильнее. шапирус. ... Я не получаю почту ни у Янкевича, ни у Яргина. --- * Origin: (2:550/4077.940) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/466841d5a816.html, оценка из 5, голосов 10
|