Logrotate hourly: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
(Новая страница: «=Logrotate hourly= Постоянно забываю как настроить часовой logrotate, эта заметка что бы долго не иск...»)
 
 
(не показаны 4 промежуточные версии этого же участника)
Строка 1: Строка 1:
  +
[[Категория:Linux]]
  +
[[Категория:Logrotate]]
  +
 
=Logrotate hourly=
 
=Logrotate hourly=
Постоянно забываю как настроить часовой logrotate, эта заметка что бы долго не искать.
+
Постоянно забываю как настроить '''часовой''' logrotate, эта заметка что бы долго не искать.
 
<BR>
 
<BR>
  +
Иногда бывает нужно - например еcли места нет
  +
  +
Отдельное место для конфигов
  +
<PRE>
  +
mkdir /etc/logrotate.hourly.d
  +
</PRE>
  +
  +
Отдельный конфигурационный файл <code>/etc/logrotate.hourly.conf</code> (минимум опций - только include, но можно добавить умолчания если нужно)
  +
<PRE>
  +
include /etc/logrotate.hourly.d
  +
</PRE>
  +
  +
<code>/etc/cron.hourly/logrotate</code> - НЕ добавлять расширение '''.sh''', добавить '''chmod +x'''
  +
<PRE>
  +
#!/bin/bash
  +
  +
  +
test -x /usr/sbin/logrotate || exit 0
  +
  +
mkdir -p /var/lib/logrotate.hourly
  +
  +
/usr/sbin/logrotate \
  +
--log /var/log/logrotate.hourly.log \
  +
--state /var/lib/logrotate.hourly/status \
  +
/etc/logrotate.hourly.conf \
  +
2>&1 >/var/log/logrotate.hourly.err
  +
</PRE>
  +
  +
Тут параметры значат следующее:
  +
* <code>--log /var/log/logrotate.hourly.log</code> - писать подробный вывод в файл (удобно для проверки работы), файл перезаписывается при каждом запуске.
  +
* <code>--state /var/lib/logrotate.hourly/status</code> - logrotate сохраняет свое состояние что бы знать нужно ли ротировать файлы (другими словами если запускать чаще то ротации не будет), и желательно для каждого экземпляра иметь свой файл
  +
<BR>
  +
Пример файла из <code>/etc/logrotate.hourly.d</code>
  +
<PRE>
  +
su root adm
  +
  +
/var/www/<ruby-on-rails-application-name>/shared/log/*.log {
  +
hourly
  +
missingok
  +
rotate 12
  +
compress
  +
notifempty
  +
sharedscripts
  +
copytruncate
  +
}
  +
</PRE>

Текущая версия на 18:00, 26 марта 2023


Logrotate hourly

Постоянно забываю как настроить часовой logrotate, эта заметка что бы долго не искать.
Иногда бывает нужно - например еcли места нет

Отдельное место для конфигов

mkdir /etc/logrotate.hourly.d

Отдельный конфигурационный файл /etc/logrotate.hourly.conf (минимум опций - только include, но можно добавить умолчания если нужно)

include /etc/logrotate.hourly.d

/etc/cron.hourly/logrotate - НЕ добавлять расширение .sh, добавить chmod +x

#!/bin/bash


test -x /usr/sbin/logrotate || exit 0

mkdir -p /var/lib/logrotate.hourly

/usr/sbin/logrotate \
    --log /var/log/logrotate.hourly.log \
    --state /var/lib/logrotate.hourly/status \
    /etc/logrotate.hourly.conf \
    2>&1 >/var/log/logrotate.hourly.err

Тут параметры значат следующее:

  • --log /var/log/logrotate.hourly.log - писать подробный вывод в файл (удобно для проверки работы), файл перезаписывается при каждом запуске.
  • --state /var/lib/logrotate.hourly/status - logrotate сохраняет свое состояние что бы знать нужно ли ротировать файлы (другими словами если запускать чаще то ротации не будет), и желательно для каждого экземпляра иметь свой файл


Пример файла из /etc/logrotate.hourly.d

su root adm

/var/www/<ruby-on-rails-application-name>/shared/log/*.log {
    hourly
    missingok
    rotate 12
    compress
    notifempty
    sharedscripts
    copytruncate
}