URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 5266
[ Назад ]

Исходное сообщение
"Разбивка access.log файла по дням (месяцам)."

Отправлено dotdm , 06-Дек-07 11:10 
Товарищи, подскажите пожалуйста как можно разделить большой (21 гигабайт) лог файл сквида по дням (месяцам), т.е. один день (месяц) - один лог файл? В скриптах, к сожалению, не силён.

Содержание

Сообщения в этом обсуждении
"Разбивка access.log файла по дням (месяцам)."
Отправлено _krool , 06-Дек-07 11:29 
>Товарищи, подскажите пожалуйста как можно разделить большой (21 гигабайт) лог файл сквида
>по дням (месяцам), т.е. один день (месяц) - один лог файл?
>В скриптах, к сожалению, не силён.

немного не в тему, но откуда такой больлой размер ?? есил нужны все логи за все года, то лучше к примеру каждый новый год его копировать к примеру на болванку, а рабочий затирать, и каждый год новый фаул :)


"Разбивка access.log файла по дням (месяцам)."
Отправлено dotdm , 06-Дек-07 11:50 
>немного не в тему, но откуда такой больлой размер ?? есил нужны
>все логи за все года, то лучше к примеру каждый новый
>год его копировать к примеру на болванку, а рабочий затирать, и
>каждый год новый фаул :)

Это лог за год (ну чуть больше, плюс пара месяцев). Просто до меня этот сквид был настроен немного неправильно в результате чего логи росли не по дням, а по часам (за год получилось около 140 гигов), плюс ротация была выключена. Я их почистил, отсортировал по дате и склеил в один файл.


"Разбивка access.log файла по дням (месяцам)."
Отправлено idle , 07-Дек-07 11:14 
>Товарищи, подскажите пожалуйста как можно разделить большой (21 гигабайт) лог файл сквида
>по дням (месяцам), т.е. один день (месяц) - один лог файл?
>В скриптах, к сожалению, не силён.

perl -lne'for([split]){($s,$min,$h,$d,$m,$y)=localtime(@$_[0]);system("echo @$_ >> $y-$m-$d")}' access.log
Год+=1900; месяц+=1.


"Разбивка access.log файла по дням (месяцам)."
Отправлено dotdm , 09-Дек-07 17:05 
>perl -lne'for([split]){($s,$min,$h,$d,$m,$y)=localtime(@$_[0]);system("echo @$_ >> $y-$m-$d")}' access.log
>Год+=1900; месяц+=1.

Спасибо, попробую.


"Разбивка access.log файла по дням (месяцам)."
Отправлено Bo , 14-Июн-10 10:40 
>>perl -lne'for([split]){($s,$min,$h,$d,$m,$y)=localtime(@$_[0]);system("echo @$_ >> $y-$m-$d")}' access.log
>>Год+=1900; месяц+=1.
>
>Спасибо, попробую.

Нутром чую что поздновато спрашиваю.
Можно ли расписать что делает каждый элемент скрипта. В перле совсем не силен.
Спасибо.


"Разбивка access.log файла по дням (месяцам)."
Отправлено idle , 12-Ноя-11 19:57 
>>>perl -lne'for([split]){($s,$min,$h,$d,$m,$y)=localtime(@$_[0]);system("echo @$_ >> $y-$m-$d")}' access.log
>>>Год+=1900; месяц+=1.
>>
>>Спасибо, попробую.
> Нутром чую что поздновато спрашиваю.
> Можно ли расписать что делает каждый элемент скрипта. В перле совсем не
> силен.
> Спасибо.

Верно чуял.
Ещё и ответил не туда.