UBUNTU: настройка ротации логов
В Ubuntu за ротацию логов отвечает утилита logrotate. Обычно она уже установлена в «базе».
Для настройки используется каталог /etc/logrotate.d В этой папке необходимо добавить файл вида:
1 2 3 4 5 6 7 8 9 10 11 |
/home/user/ocpp_servers/*.log { weekly missingok rotate 90 compress delaycompress notifempty create 755 root adm sharedscripts } |
Собственно просто указываем файлы которые нуждаются в «ротации», и внутри скобок — что делать с ними.
- rotate — указывает сколько старых логов нужно хранить, в параметрах передается количество;
- create — указывает, что необходимо создать пустой лог файл после перемещения старого;
- dateext — добавляет дату ротации перед заголовком старого лога;
- compress — указывает, что лог необходимо сжимать;
- delaycompress — не сжимать последний и предпоследний журнал;
- extension — сохранять оригинальный лог файл после ротации, если у него указанное расширение;
- mail — отправлять Email после завершения ротации;
- maxage — выполнять ротацию журналов, если они старше, чем указано;
- missingok — не выдавать ошибки, если лог файла не существует;
- olddir — перемещать старые логи в отдельную папку;
- postrotate/endscript — выполнить произвольные команды после ротации;
- start — номер, с которого будет начата нумерация старых логов;
- size — размер лога, когда он будет перемещен;
- hourly — каждый час;
- daily — каждый день;
- weekly — каждую неделю;
- monthly — каждый месяц;
- yearly — каждый год.
Тестирование получившейся конфигурации:
1 |
logrotate -d /etc/logrotate.d/ocpp |