Поворот журнала varnish с помощью rsyslog в стеке magento bitnami

#linux #amazon-web-services #magento #varnish #rsyslog

#linux #amazon-веб-сервисы #magento #varnish #rsyslog

Вопрос:

Я создал экземпляр ec2 со стеком Magento Bitnami на нем (ami-04a541d64dbfb377e). Я использовал команду

 varnishncsa -a -w /path/to/varnish/logs/mylog.log -D 
  

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

Теперь мне нужно повернуть журнал, когда файл / путь /к / varnish/logs/mylog .журнал достигает определенного размера файла, например, 10 МБ.

В системе используется rsyslog.

Я попытался использовать это руководство из документа rsyslog, чтобы получить эту ссылку, буквально скопировав ее и изменив путь к файлам.

В результате у меня получается 2 файла (/path/to/varnish/logs/mylog.журнал и /путь/к /varnish/logs/mylog.log.1), где все журналы переходят во второй (также превышающий указанный размер файла).

где я ошибаюсь?

Ответ №1:

Проблема, с которой вы столкнулись, возникает из-за того, что у Varnish все еще открыт дескриптор файла после того, как вы переместили его в файловую систему.

Если вы не можете указать программе перезапустить ведение журнала непосредственно после перемещения (с помощью чего-то вроде SIGHUP или systemctl restart varnish), вам придется использовать другой метод для вращения, чем перемещение файлов, в которые записаны в это время.