Как установить ограничение на рост файла ошибок /home/httpd/.../stats/
У меня есть аккаунт VPS.
Файл:
/home/httpd/..../stats/...-error_log
регистрирует так много ошибок, что заполняет 20 ГБ на жестком диске в течение 24 часов, что, помимо прочего, закрывает доступ к моей почте и т. д.
Большинство из этих ошибок являются повторяющимися и незначительными, и я в конечном итоге исправлю их, но как я могу сначала настроить запись ошибок, чтобы она создавала различные файлы и удаляла старые, прежде чем создавать новые? Это то, что я помню по работе на веб-серверах Linux, над которыми я работал в прошлом. Я бы подумал, что это будет настройка по умолчанию, не так ли на большинстве серверов VPS (моя учетная запись использует CentOS)?
2 ответа
Лучший способ ограничить размер журнала - использовать logrotate. Проверьте "man logrotate" и /etc/logrotate.conf. Вы можете настроить его на автоматическое сжатие и ротацию журналов, когда они достигают определенного возраста или размера; Размер - лучший выбор в вашей ситуации.
Есть несколько вариантов для изучения...
Прежде всего: вы всегда можете просто зайти в конфигурацию apache и отключить этот конкретный журнал ошибок, пока не будете готовы работать над проблемами. Найдите строку ErrorLog в вашем каталоге / etc / httpd и закомментируйте ее.
Второе: вы можете запускать "logrotate" каждый час. Я предполагаю, что уже есть ежедневная регистрация и менее чем за 24 часа, что вызывает у вас проблемы. В CentOS конфигурация для ротации этого журнала должна быть в /etc/logrotate.d/httpd - вы можете настроить размер этого файла вместо размера времени для этого файла журнала. Если вы не передадите почасовую версию пользовательской конфигурации, она будет синхронизировать ротацию журналов других файлов. Просто переместите или скопируйте /etc/cron.daily/logrotate в /etc/cron.hourly/logrotate для простого решения.
В-третьих: посмотрите на "rotatelogs". Это идет с Apache, и имеет свою собственную страницу руководства. Недостатком является то, что он не выполняет удаление, он просто разбивает журналы по критериям (таким как размер, время и т. Д.). Так что вам все еще нужно
Четвертое: журнал сжат. GZip должен получить степень сжатия 10:1 для большинства файлов журнала. Примерно так: ErrorLog "|gzcat > /home/httpd/..../stats/...-error_log.gz" (но убедитесь, что у вас есть какая-то рабочая ротация, иначе у вас будет та же проблема в несколько дней)