Skip to content

Логи

control.observability.logs

Sapsan пишет структурированные логи в формате JSON в стандартный вывод (stdout). Уровень задаётся переменной окружения RUST_LOG; по умолчанию используется info с отдельными фильтрами для внутренних модулей.

Запуск вручную

Укажите путь к существующему конфигу. Второй пример включает подробные сообщения модуля hls.

RUST_LOG=info CONFIG_PATH=/etc/sapsan/sapsan.yaml /usr/sbin/sapsan
RUST_LOG=info,hls=trace CONFIG_PATH=/etc/sapsan/sapsan.yaml /usr/sbin/sapsan

Служба systemd

При запуске пакета как службы sapsan.service вывод принимает systemd journal. Это журнал systemd; journalctl читает его. Отдельный файл syslog зависит от настройки пересылки журналов в ОС.

sudo journalctl -u sapsan.service -n 100 --no-pager
sudo journalctl -u sapsan.service -f
sudo journalctl -u sapsan.service --since "1 hour ago" -o cat

Первые две команды показывают последние сообщения и новые сообщения в реальном времени. Для изменения уровня службы выполните sudo systemctl edit sapsan и добавьте:

[Service]
Environment="RUST_LOG=info,hls=debug"

Примените изменение командой sudo systemctl restart sapsan. Подробности фильтрации — в документации journalctl.

Docker и центральное хранилище

Для контейнера с именем sapsan используйте:

docker logs --tail 100 sapsan
docker logs --follow sapsan

Docker принимает stdout процесса; просмотр зависит от выбранного драйвера логирования. Для отправки логов в центральное хранилище настройте источник Docker logs в Vector и выход Loki. Альтернатива для Loki — Grafana Alloy с loki.source.docker. Адрес хранилища и срок хранения задаются в системе сбора логов.