Skip to content

feat: added compile-time logging option - #8

Merged
mad201802 merged 1 commit into
mainfrom
feature/logging
Mar 10, 2026
Merged

mad201802 merged 1 commit into
mainfrom
feature/logging

Conversation

@mad201802

Copy link
Copy Markdown
Collaborator

This pull request introduces a structured, real-time safe logging system to the Sero library, enabling fine-grained diagnostics and operational visibility across all core subsystems. The new logger is zero-overhead when disabled and provides compile-time filtering and structured log entries. Logging is integrated throughout the runtime, with log calls added to key validation, dispatch, and transport operations. Configuration structs now support compile-time log level control. The most important changes are grouped below:

Logging System Implementation

  • Added sero/core/log.hpp, which defines the Logger class, log levels, categories, structured log entries, and a callback interface for real-time safe logging.
  • Integrated the logger into the Runtime class, including a member variable, log callback setter, and propagation to all core subsystems. [1] [2] [3]

Logging Integration in Runtime Operations

  • Added log calls to all major validation steps, dispatch, transport send failures, and request/response handling in Runtime, providing detailed structured logs for errors, warnings, and operational events. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]

Configuration Enhancements

  • Added MinLogLevel to DefaultConfig and EmbeddedConfig, enabling compile-time control of logging verbosity and elimination of log calls when disabled. [1] [2]

Header and Dependency Updates

  • Included sero/core/log.hpp in umbrella and core headers to make logging available throughout the library. [1] [2] [3]

These changes collectively provide a robust foundation for diagnostics and observability, with minimal runtime overhead and full compile-time control.

@mad201802
mad201802 merged commit 5a8c34b into main Mar 10, 2026
11 checks passed
@mad201802
mad201802 deleted the feature/logging branch March 10, 2026 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant