Мы используем Apache 2.2.9 (Win32) с несколькими виртуальными хостами, настроенными на одном сервере. Каждый из них имеет свои собственные настройки ErrorLog и CustomLog в формате «logs / [имя домена] -error.log» и «logs / [имя домена] -access.log». К сожалению, сейчас они создают довольно большие файлы.
На IIS вы можете указать расписание логов, в котором они могут быть представлены в ежедневном формате «yymmdd.log». Есть ли что-то подобное, что я могу сделать здесь?
Это не должно быть ежедневным, еженедельным или ежемесячным. Я просто хотел бы разбить их, чтобы мы могли сохранить количество Х вместо всего, что оно когда-либо регистрировало. Быстрый Google, кажется, предлагает множество ответов, ориентированных на Linux, включая разделители журналов, сценарии и задания cron, что не слишком полезно для установки Windows.
Обновить
Благодаря радиусу я настроил свой httpd-vhosts.conf, чтобы использовать встроенную в Apache команду rotatelogs в следующем формате:
ErrorLog "|bin/rotatelogs logs/[domain name]-error.%Y-%m-%d-%H_%M_%S.log 5M"
CustomLog "|bin/rotatelogs logs/[domain name]-access.%Y-%m-%d-%H_%M_%S.log 5M" common
Они создадут новый файл журнала, когда текущий достигнет 5 МБ. Я знаю, что это не каждый день, как просили, но это позволяет им иметь приемлемый размер, который подойдет. Я попытался повернуть через столько секунд, но, похоже, метка времени в названии файла не помещалась правильно (в частности, часы, минуты и секунды).