Skip to content

Logging

RUSEON Core uses rs/zerolog for high-performance, allocation-free structured logging.

Log Output

Logs are output in JSON format by default, making them easy to ingest into ELK, Loki, or Datadog. When running interactively, the ConsoleWriter provides colorized output.

Standard Go library logs (e.g., from underlying HTTP servers) are intercepted and routed to zerolog at the Warn level to prevent log fragmentation.

Log Levels

  • InfoLevel (Default): Standard operational events (server start, stream connected).
  • DebugLevel: Detailed frame-level parsing, DB operations. Enabled via debug: true in configuration.
  • WarnLevel: Non-fatal issues (stream reconnecting).
  • ErrorLevel: Actionable errors (disk write failure).

Real-time Logging (SSE)

RUSEON Core features an SSE (Server-Sent Events) GlobalBroadcaster. This allows authenticated clients to stream live server logs directly to the browser UI without tailing files on the server.

Released under the MIT License.