У меня есть каталог со многими файлами журналов, каждый из которых я хотел бы менять ежедневно. В организационных целях я хотел бы иметь возможность перемещать повернутые журналы в другой каталог (или подкаталог) с именем по дате, сохраняя последнюю неделю журналов.
Я могу использовать logrotate для достижения большей части этого, вращая файлы на месте или даже перемещая их в один другой каталог с помощью olddir
директивы, но у меня возникают проблемы с поиском решения для создания отдельных подкаталогов за вращение. Как мне этого добиться?
Logs to rotate: /var/log/example/*
Desired target directories (keeping a week):
/var/log/example/20121006/*
[ ... ]
/var/log/example/20121012/*
postrotate
добьется цели. Единственное, что мне нужно добавить, - это очистить старые каталоги, которые превышают определенное количество или старше определенной даты.find | xargs
должна удалить все непосредственные подкаталоги,/var/log/example
если они были последний раз изменены более 7 дней назад.У вас есть
olddir
директива, которую вы можете использовать в конфигурационном файле.Из документации:
Ссылка : https://manpages.debian.org/jessie/logrotate/logrotate.8.en.html
источник