Categories: Server Linux

Ротация логов процессов в supervisord

Если вы пользуетесь supervisord, то наверняка сталкивались с неудобством ротации логов в нём.

Типичная настройка в конфигурационном файле процесса в /etc/supervisor.d/ выглядит так:

stdout_logfile=/var/log/progam/process_%(process_num)02d.log_x000D_stdout_logfile_maxbytes=100MB_x000D_stdout_logfile_backups=50_x000D_

Логи складываются в отдельные файлы и ротируются по достижении размера в 100 мегабайт. Данный способ не очень удобен, особенно если нужно искать логи за определённую дату.

В этом случае на помощь приходит logrotate.

В конфигурационном файле процесса меняем опции логов:

stdout_logfile_maxbytes=0_x000D_stdout_logfile_backups=0

И добавляем в /etc/logrotate.d/processname:

/var/log/program/process_*.log {_x000D_ create 0600 root root_x000D_ su root root_x000D_ daily_x000D_ copytruncate_x000D_ compress_x000D_ missingok_x000D_ notifempty_x000D_}

Теперь логи будут складываться в «суточные» файлы и автоматически сжиматься.

admin

Share
Published by
admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

1 месяц ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

1 месяц ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

1 месяц ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

1 месяц ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

1 месяц ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

1 месяц ago