TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
CORTEL

18 Jun, 10:10

Открыть в Telegram Поделиться Пожаловаться

🖥 logrotate — утилита для автоматической ротации, сжатия и удаления логов в Linux.

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

logrotate не работает постоянно в фоне.
Его запускает cron (/etc/cron.daily/logrotate) или systemd-таймер (logrotate.timer), обычно раз в сутки.

При запуске утилита читает конфиги, проверяет условия ротации и выполняет действия, если файл подходит под заданные правила.

➡️ Где лежат конфиги?

— /etc/logrotate.conf — основной файл с глобальными настройками.
— /etc/logrotate.d/ — каталог с отдельными конфигами для каждого сервиса (nginx, postgres и т.д.)

➡️ Пример конфига для приложения:

Допустим, нужно ротировать логи своего приложения в /var/log/myapp/.
Создаётся файл /etc/logrotate.d/myapp:


daily
rotate 14
size 100M
compress
delaycompress
missingok
notifempty
create 0640 myapp myapp
sharedscripts
postrotate
systemctl reload myapp >/dev/null 2>&1 || true
endscript
}

➡️Что задано:

— daily — проверять ротацию каждый день.
— rotate 14 — хранить 14 архивных копий.
— maxsize 100M — ротировать файл при проверке, если он превысил 100 МБ.
— compress — сжимать старые логи.
— delaycompress — сжимать файл на следующем цикле ротации.
— missingok — продолжать работу, если лог-файл отсутствует.
— notifempty — не ротировать пустой файл.
— create 0640 myapp myapp — создать новый лог-файл с нужными правами и владельцем.
— sharedscripts — выполнить postrotate один раз для всей группы файлов.
— postrotate ... endscript — выполнить команду после ротации.

➡️ Полезные команды

➡️ Проверить конфиг без изменений (dry-run):


logrotate -d /etc/logrotate.d/myapp

➡️ Принудительно запустить ротацию, игнорируя расписание:


logrotate -f /etc/logrotate.conf

➡️ Подробный вывод того, что происходит:


logrotate -v /etc/logrotate.conf

👀 Обычно logrotate уже настроен при установке сервисов. Но его правила стоит проверять: от них зависит, как долго хранятся логи, когда они сжимаются и сколько места занимают на диске.

#линуксятина

968 0 25 13
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot