Эквивалент LogRotate для Windows?

30

У нас есть огромный лог-файл, который пишется приложением производителя. Давайте предположим, что продавец не будет делать то, что мы просим. Есть ли способ вращать этот лог-файл? Мы смотрим примерно на 300 МБ в час на запись - я бы предпочел разделить это на 10 МБ кусками и позволить всему, что старше одного дня или более 1000 файлов, упасть с обрыва.

(Я знаю, я знаю, возможный дубликат Как вы вращаете журналы Apache в Windows, не прерывая обслуживание? )

Ага - журнал Chomp был мертв, но поиск "chomp logrotate" привел меня на его новый сайт . Завтра попробую и отвечу, если мне понравится. Я все еще хотел бы услышать о программном обеспечении, которое кто-либо еще использует, который работает для этого.

mfinni
источник
Периодически перезапускает ваш сервис будет вызывать проблемы? Может ли приложение отправить свой вывод в программу или в сетевой сокет?
Зоредаче
Он может войти в стандартный вывод или в именованный файл. Возможность перезагрузки - возможно, пока не определено.
mfinni
Существуют сотни скриптов для ротации логов. Например, выполните поиск в Google по запросу «ротация логов PowerShell».
Джим Б.
Он специально обрабатывает старые (устаревшие) файлы, которые больше не записываются, что довольно просто. Я искал что-то для обработки одного файла.
mfinni
Поиск по этому форуму для "logrotate" дал 0 результатов.
mfinni

Ответы:

8

Как бы я ни удивлялся, предложение Cygwin - один из немногих доступных вам вариантов. Оттуда вы можете использовать logrotate.

Wesley
источник
2
Не боюсь Cygwin, если он включает в себя хорошее решение, хотя я всегда помнил о том, чтобы не использовать пушку, чтобы ударить муху.
mfinni
1
Извините, нужно снять мою галочку. Я не вижу logrotate в каталоге для текущего Cygwin. Он может правильно собираться из исходного кода, но MAKEFILE не содержит ничего для CYG или WIN.
mfinni
@mfinni Увы, его нет в пакете, хотя другие использовали его в Cygwin. = /
Уэсли
Звучит хорошо для меня
mfinni
2
Я подтверждаю возможность перемещения файла журнала акций Cygwin syslog-ng.
ivan_pozdeev
10

Я еще не использовал его, но LogRotateWin - это нативная реализация logrotate для Windows, которая выглядит многообещающе. По крайней мере, это не требует Cygwin.

bmaupin
источник
3
Я использовал это на Windows 2012 R2. Работает отлично. choco install logrotateзатем отредактируйте файлы программы c: \ (x86 \ LogRotate \ Content \ logrotate.conf
spuder
8

Взгляните на logwot8 , который представляет собой пакет logrotate, ограниченной оболочки и необходимых компонентов уровня cygwin, готовых к работе «из коробки» (размер установщика 4 МБ). Вам необходимо настроить файл конфигурации в соответствии с вашими требованиями. Это бесплатно для использования и распространения под лицензией BSD с 2 предложениями.

Отказ от ответственности: я разработчик :-)

itefix
источник
Есть ли перспектива для источников? Скажем, перекомпилировать его для установленного Cygwin, а не перевезти отдельный?
ivan_pozdeev
Вы можете скачать источники logrotate, используемые в logwot8 здесь .
itefix