Как повернуть файл журнала от crontab?

У меня есть эта директива по моему crontab:

* * * * * /var/www/github/mysite/bin/email email worker await --pid=/var/run/mysite-worker-email.pid >> /tmp/mysite-worker-email.log

Поскольку Вы видите, что все мои журналы записаны в /tmp/mysite-worker-email.log, есть ли способ, которым я могу повернуть тот файл?

5
задан 6 July 2015 в 13:53
1 ответ

При условии, что у вас есть права root на машине. Если вы находитесь на виртуальном хостинге, SF все равно не тот сайт, который вам нужен.

Проверьте, существует ли /etc/logrotate.conf и /etc/logrotate.d. Если они существуют, добавьте файл с подходящим именем, например site_email в /etc/logrotate.d с содержанием, подобным указанному ниже:

/tmp/mysite-worker-email.log {
   compress
   daily 
   missingok
   rotate 7
}

Это позволит ежедневно вращать лог-файлы и хранить сжатые копии за последние 7 дней. logrotate имеет гораздо больше опций, смотрите man logrotate.conf для всех них.

Обратите внимание: хранить файлы журнала в /tmp - плохая идея. Поместите их в /var/log/, где им и место, особенно если вы хотите сохранить больше копий лог-файла и не хотите, чтобы они были удалены при очистке /tmp.

14
ответ дан 3 December 2019 в 01:00

Теги

Похожие вопросы