Я создал ротацию журналов, но, похоже, у меня это не работает, так как создается большое количество файлов, таких как «smartfox.log.2020-01-05-07.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1. .1.1 "
Кроме того, Rotate 3 и maxsize 100M также не работают, поскольку я вижу файлы старше 3 дней и более 100M.
Если не ошибаюсь, следующая ротация журнала должна удалить файл старше 3 дней и сохранить только 100M файл журнала:
admin@ip-172-20-44-75:/etc/logrotate.d$ cat /etc/logrotate.d/smartfox-qa
/var/log/cog-qa/smartfox-qa/*{
rotate 3
copytruncate
missingok
notifempty
delaycompress
maxsize 100M
daily
create 0644 root root
}
админ @ ip-172-20-44-75: / var / log / cog-qa / smartfox-qa $ ls -lthr
-rw-r--r-- 1 root root 0 Jan 6 03:18 smartfox.log.2020-01-05-13.1.1.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 655M Jan 6 03:18 smartfox.log.2020-01-05-14.1.1.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:18 smartfox.log.2020-01-05-14.1.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 656M Jan 6 03:18 smartfox.log.2020-01-05-15.1.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:18 smartfox.log.2020-01-05-15.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 653M Jan 6 03:18 smartfox.log.2020-01-05-16.1.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:18 smartfox.log.2020-01-05-16.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 661M Jan 6 03:18 smartfox.log.2020-01-05-17.1.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:18 smartfox.log.2020-01-05-17.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 660M Jan 6 03:19 smartfox.log.2020-01-05-18.1.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:19 smartfox.log.2020-01-05-18.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 665M Jan 6 03:19 smartfox.log.2020-01-05-19.1.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:19 smartfox.log.2020-01-05-19.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 658M Jan 6 03:19 smartfox.log.2020-01-05-20.1.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:19 smartfox.log.2020-01-05-20.1.1.1.1.1.1
-rw-r--r-- 1 root root 675M Jan 6 03:19 smartfox.log.2020-01-05-21.1.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:19 smartfox.log.2020-01-05-21.1.1.1.1.1
-rw-r--r-- 1 root root 656M Jan 6 03:19 smartfox.log.2020-01-05-22.1.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:20 smartfox.log.2020-01-05-22.1.1.1.1
-rw-r--r-- 1 root root 660M Jan 6 03:20 smartfox.log.2020-01-05-23.1.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:20 smartfox.log.2020-01-05-23.1.1.1
-rw-r--r-- 1 root root 649M Jan 6 03:20 smartfox.log.2020-01-06-00.1.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:20 smartfox.log.2020-01-06-00.1.1
-rw-r--r-- 1 root root 662M Jan 6 03:20 smartfox.log.2020-01-06-01.1.1
-rw-r--r-- 1 root root 0 Jan 6 03:20 smartfox.log.2020-01-06-01.1
-rw-r--r-- 1 root root 661M Jan 6 03:20 smartfox.log.2020-01-06-02.1
-rw-r--r-- 1 root root 0 Jan 6 03:20 smartfox.log.2020-01-06-02
Пожалуйста, дайте мне знать, где я ошибаюсь!
Похоже, вы меняете не только файлы, которые, вероятно, хотите (smartfox.log.????-??-??- ??), но и все файлы в папке smartfox-qa. Если да, вам следует исправить выражение с подстановочными знаками
/var/log/cog-qa/smartfox-qa/smartfox.log.????-??-??-?? {
rotate 3
copytruncate
missingok
notifempty
delaycompress
maxsize 100M
daily
create 0644 root root
}
Обратите внимание, что man logrotate явно предупреждает об использовании подстановочных знаков.
Пожалуйста, используйте подстановочные знаки с осторожностью. Если вы укажете *, logrotate повернет все файлы, включая ранее повернутые. Обойти это можно с помощью директивы olddir или более точного подстановочного знака (например, * .log).