-
Notifications
You must be signed in to change notification settings - Fork 3
Home
logme is a flexible, high-performance logging library designed for applications that require runtime configurability, dynamic control, and zero-cost overhead when logging is disabled.
Unlike traditional logging frameworks, logme supports:
- Channel hierarchies
- Runtime reconfiguration without recompilation
- JSON-based configuration
- Dynamic control via a built-in control server
- Log encryption (per-line, ChaCha-based)
- Optional logging in Release builds
- Fine-grained message filtering via callbacks
- Unified logging API supporting printf-style, iostream-style, and std::format-style formatting
- Buffered and optimized file output designed for high-throughput production workloads
logme can be used as a simple logger — or as a fully dynamic logging subsystem.
logme supports three configuration approaches:
-
Default configuration
No explicit configuration. A default channel with sensible settings is created automatically. -
Hardcoded configuration
Channels and backends are created explicitly in code. -
JSON-based configuration (recommended)
Channels, hierarchy, backends, routing, error handling, and control server are described in a JSON file and can be reloaded at runtime.
All three models can coexist.
- Windows
- Linux
Console output supports ANSI color sequences on both platforms, including modern Windows terminals with VT processing enabled.
logme — flexible runtime logging system
Home · Getting Started · Architecture · Output · Backends · Configuration
GitHub: https://github.com/efmsoft/logme
- Home
- Getting Started
- Why logme?
- Core Concepts
- Logging Macros
- Fatal Handling
- Crash Logging
- glog Compatibility
- C API
- Choosing Logging Macros
- Function tracing
- Trace Points
- Override Scopes
- Advanced Features
- Collapse Logging
- Feature Map
- Overview
- Console Backend
- Debugger Backend
- File Backend
- File Rotation & Retention
- Buffer Backend
- Ring Buffer Backend
- SharedFile Backend
- Callback Backend
- Windows Event Log Backend
- Custom Backends
- Runtime Control
- Configuration
- Configuration JSON
- Control Server
- Environment Control
- Control Policies
- Trace Points
- Message Filtering