HTTP Access Log в Astra
HTTP Access Log фиксирует каждый запрос к встроенному HTTP-серверу Astra. Используйте их, чтобы отслеживать, кто обращается к вашим потокам, диагностировать проблемы с воспроизведением или контролировать трафик. По умолчанию access log отключён.
Включите access log в Настройки → Общие → HTTP-сервер:
HTTP Access Log: Полный путь, где сохраняются логи, например /var/log/astra-access.log
Примеры записей в логе
Заголовок раздела «Примеры записей в логе»192.168.88.100 - - [11/Aug/2023:07:03:07 +0000] "GET / HTTP/1.1" 200 0192.168.88.100 - admin [11/Aug/2023:07:03:07 +0000] "POST /control/ HTTP/1.1" 200 0198.51.100.1 - - [11/Aug/2023:07:03:08 +0000] "GET /play/a0g2/71545838.m3u8 HTTP/1.1" 200 0198.51.100.1 - - [11/Aug/2023:07:03:08 +0000] "GET /play/a0g2/113900585_92b9.ts HTTP/1.1" 200 0Каждая строка соответствует стандартному формату HTTP-сервера:
remote_addr - remote_user [time] "request" status bytes_sent- remote_addr: IP-адрес клиента, который сделал запрос
- remote_user: Имя пользователя, если использовалась аутентификация, иначе отображается как
- - time: Время получения запроса
- request: HTTP-метод, запрошенный URL и версия протокола
- status: Код ответа HTTP (200 — успешно, 404 — не найдено и т.д.)
- bytes_sent: Количество данных, отправленных в ответе
Ротация логов
Заголовок раздела «Ротация логов»Access log со временем увеличивается и может заполнить диск. Используйте ротацию логов, чтобы автоматически архивировать старые записи и освобождать место. В Linux для этого используется logrotate.
Создайте конфигурационный файл по пути /etc/logrotate.d/astra-access-log:
/var/log/astra-access.log { daily rotate 10 missingok notifempty compress delaycompress sharedscripts postrotate systemctl reload astra || true endscript}Описание параметров:
- daily: Ротировать логи каждый день
- rotate 10: Хранить 10 последних архивных файлов
- missingok: Не выводить ошибку, если файл лога отсутствует
- notifempty: Пропускать ротацию, если файл лога пустой
- compress: Сжимать старые логи с помощью gzip для экономии места
- delaycompress: Откладывать сжатие на один цикл, чтобы не потерять свежие сообщения
- sharedscripts: Выполнять postrotate-скрипт только один раз, даже если файлов несколько
- postrotate: Команда, выполняемая после ротации. Перезапускает Astra, чтобы она начала писать в новый лог-файл