Что такое за и против logrotate по сравнению с rotatelogs с Apache?

У меня есть Кремниевая Механика, для монтажа в стойку, который я купил используемый. Это - двойной сокет система Opteron с 3ware RAID-контроллер, и у меня не было аппаратных проблем с ним. Друг купил некоторых используемых на eBay, и они работали без аппаратных проблем. У моего бывшего работодателя есть дюжина полей Silicon Mechanics, которые они используют для Теста и Производства. Единственными проблемами, которые имели те поля каждый, были проблемы программного обеспечения с нашим собственным кодом.

Если бы я искал новые серверы, то я поместил бы их высоко в список поставщиков для получения кавычек от.

11
задан 8 March 2010 в 20:26
2 ответа

Я рекомендовал бы logrotate для большинства людей начиная с того, именно это будет поворачивать все другие журналы (KISS: Сохраните это Простым Глупый). Logrotate не перезапускает весь Apache, скорее он просто отправляет ему сигнал, который говорит ему вновь открыть весь, его - дети перезапуска и файлы журнала. Этот сигнал может быть SIGHUP, который заставляет детей перезапускать сразу же (который прервет загрузки), или SIGUSR1, который делает корректный перезапуск. С SIGUSR1 необходимо задержать журнал, обрабатывающий, пока Вы не думаете, что все дети умерли бы естественно. Так или иначе Вы, вероятно, хотите проанализировать свои журналы, и время это в течение самого низкого транспортного периода в день или недели.

Переданные по каналу журналы кажутся, что это - более мощное решение. Так как большое преимущество будет этим, оно позволит Вам использовать централизованную систему регистрации и брать загрузку самого веб-сервера. В самом руководстве говорится:

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

Так, по-видимому, не используйте переданный по каналу вход, если Вам не нужен он. Я использовал переданное по каналу вхождение в систему прошлого в качестве hacky способа отфильтровать журналы и не имел никакой проблемы.

7
ответ дан 2 December 2019 в 21:54
  • 1
    Постповорачивать сценарий с Apache' s logrotate файлы должен отправить SIGHUP, который заставляет Apache завершать всех детей и перезапуск. Любые активные соединения в то время завершаются. –  Warner 8 March 2010 в 20:37
  • 2
    Я прочитал комментарий где-нибудь, в котором было сказано, что корректный перезапуск не работает очень хорошо с серверами, несущими большую нагрузку. Но я действительно не думаю, что существует большая часть альтернативы. –  Mohan Gulati 8 March 2010 в 21:10
  • 3
    logrotate с SIGHUP является довольно стандартным. Я wouldn' t волнуются об этом. –  Warner 8 March 2010 в 21:17

Я использовал оба раньше. Я обнаружил, что использование rotatelogs - очень полезный инструмент для управления журналами доступа, и если вы не хотите простоя apache. На сайте с большим объемом я бы рекомендовал это, единственная проблема, которую я обнаружил, заключалась в том, что если вы хотите управлять журналами, вам понадобится отдельный скрипт cron'd для очистки или перемещения журналов на сервер резервного копирования, очевидно, это зависит от требования. С logrotate у вас есть больше возможностей для обработки файлов журнала, единственная проблема заключается в том, что когда logrotate запускается, как описано в предыдущем ответе, вам нужно будет перезапустить apache.

В основном все сводится к выбору, если вам нужен apache для работает без перерывов, затем ротация журналов с помощью внешнего скрипта cron для управления, иначе logrotate будет достаточно. Просто не забудьте настроить logrotate cron так, чтобы журналы не менялись при большом трафике.

Наконец, если вы хотите, чтобы журнал apache был в вашем системном журнале, вы всегда можете использовать команду logger, которая есть в Linux на основе Redhat.

2
ответ дан 2 December 2019 в 21:54

Теги

Похожие вопросы