Skip to content

Логирование

RUSEON Core использует библиотеку rs/zerolog для высокопроизводительного структурированного логирования без аллокаций.

Формат логов

По умолчанию логи выводятся в формате JSON, что упрощает их сбор в ELK, Loki или Datadog. При интерактивном запуске ConsoleWriter обеспечивает цветной вывод в консоль.

Логи стандартной библиотеки Go (например, от HTTP серверов) перехватываются и маршрутизируются в zerolog на уровне Warn, предотвращая фрагментацию.

Уровни логирования

  • InfoLevel (По умолчанию): Стандартные события (запуск сервера, подключение потока).
  • DebugLevel: Детальный парсинг кадров, операции БД. Включается флагом debug: true в конфиге.
  • WarnLevel: Некритические проблемы (переподключение).
  • ErrorLevel: Серьезные ошибки (ошибка записи на диск).

Логи в реальном времени (SSE)

RUSEON Core имеет встроенный GlobalBroadcaster на основе SSE (Server-Sent Events). Это позволяет авторизованным клиентам получать поток логов прямо в UI браузера без необходимости tail-ить файлы на сервере.

Released under the MIT License.