Логи¶
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. Адрес хранилища и срок хранения задаются в системе сбора логов.