The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Разобрать лог squida"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Разобрать лог squida"
Сообщение от slava emailИскать по авторуВ закладки on 14-Фев-04, 16:30  (MSK)
Подскажите как сделать или может есть готовые уже. Надо лог разобрать по ip и раскидать в файлики. Есть каталог и внем лежит несколько логов, надо их в обратном порядке раскидать сначала н-р access.log.3 потом 2 потом 1. Пробовал просто через сплит разбивать строку и потом в файлы все пихать, но очень долго все делается, или память жрет, 6 меговый лог в памяти на 40 мег выходит.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Разобрать лог squida"
Сообщение от XMan Искать по авторуВ закладки on 14-Фев-04, 17:50  (MSK)
Идешь по моим стопам. Первое уже сделал - загрузку и разбор файла в памяти. У меня такой скрипт тоже прожорливый был. Хотя ты меня даже переплюнул - у меня он откушивал всего в два раза больше объема файла :)

Следующий шаг - обработка логов с хранением в памяти только основных ключей и ссылок на соответствующие строки файлов. Медленно, но памяти жрет меньше объема файла.

Третий и пока последний шаг - забей на хранение результатов в файлах и перейди на SQL-сервер. Масса плюсов, в частности выборка чего угодно по любым критериям. Если дать индексацию, то и довольно быстро (выборка из таблицы с ~2-мя млн. записями по конкретному условию выполняется меньше секунды), хотя для 6-ти метрового лога оно и так быстро будет :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Разобрать лог squida"
Сообщение от vt Искать по авторуВ закладки on 15-Фев-04, 16:43  (MSK)
>2 потом 1. Пробовал просто через сплит разбивать строку и потом
>в файлы все пихать, но очень долго все делается, или память
>жрет, 6 меговый лог в памяти на 40 мег выходит.

Долго - это сколько ?
И чего долго делается - в файлики пишется ?

Меня, например, вполне устраивает
awk '{print >> $3}' access.log

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Разобрать лог squida"
Сообщение от slava emailИскать по авторуВ закладки on 15-Фев-04, 17:56  (MSK)
>Долго - это сколько ?
>И чего долго делается - в файлики пишется ?
>
>Меня, например, вполне устраивает
>awk '{print >> $3}' access.log

Ок, работает быстро, но как на авк сделать вывод не в текущий каталог, а по путям, и еще каталоги надо как-то делать по ип?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "Разобрать лог squida"
Сообщение от vt Искать по авторуВ закладки on 16-Фев-04, 10:16  (MSK)
>Ок, работает быстро, но как на авк сделать вывод не в текущий
>каталог, а по путям, и еще каталоги надо как-то делать по
>ип?

То есть, надо чтобы было
имя каталога = ip-адрес
имя файла = номер лога ?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Разобрать лог squida"
Сообщение от slava emailИскать по авторуВ закладки on 16-Фев-04, 10:42  (MSK)
>То есть, надо чтобы было
>имя каталога = ip-адрес
>имя файла = номер лога ?
да в принципе сделал, только вот один вопрос появился.
есть такой кусок:
dirs="."
for f in $(find $dirs -type f); do
    echo $f
    sarg -l $f -o $stat/$f/http/$year/$mounth
    bzip2 $f
    if [ ! -d "$historylog/$year/$mounth/$f" ]; then
        mkdir $historylog/$year/$mounth/$f
    fi
    mv $f.bz2 $historylog/$year/$mounth/$f/$day.bz2
done
но find выдает имя с ./ т.е. ./192.168.1.1
и когда потом сарг работает он не может удалить или записать файлы по путям
получается /log/2004/02/./192.168.1.1
как бы эту точку убрать?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Разобрать лог squida"
Сообщение от vt Искать по авторуВ закладки on 16-Фев-04, 15:02  (MSK)
>как бы эту точку убрать?
basename path/file --> file


  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру