|
Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
|
doc_id: "LOG-ARCH-009" doc_title: "Logger System - Project Structure" doc_version: "1.0.0" doc_date: "2026-04-04" doc_status: "Released" project: "logger_system"
SSOT: This document is the single source of truth for Logger System - Project Structure.
English | 한국어
core/)logger: Asynchronous logging enginelogger_builder: Fluent configuration APIlogger_config: Configuration managementlog_collector: Log entry collectioncommon_system (ILogger, Result<T>)interfaces/)logger_interface: Main logger contractlog_writer_interface: Writer abstractionlog_formatter_interface: Formatter abstractionlog_filter_interface: Filter abstractionlog_sink_interface: Sink abstractionwriters/)console_writer: ANSI-colored console outputfile_writer: Buffered file writingrotating_file_writer: Automatic log rotationnetwork_writer: TCP/UDP remote loggingasync_writer: Asynchronous wrappercritical_writer: Synchronous critical logsencrypted_writer: Encrypted output (demo)interfaces/, filesystem, networkingformatters/)base_formatter: Common formatting logicinterfaces/filters/)log_filter: Level-based, regex, custom filtersinterfaces/, regexrouting/)log_router: Route logs to specific writersinterfaces/, writers/analysis/)log_analyzer: Pattern detection, statisticsinterfaces/, regexstructured/)structured_logger: Structured log buildercore/, JSON librarysafety/)crash_safe_logger: Signal handlers, emergency flushcore/, platform signal APIsserver/)log_server: TCP/UDP log receivercore/, writers/, networkingadapters/)common_logger_adapter: common_system integrationlogger_adapter: Generic adapter patterncommon_system, thread_system (optional)core/monitoring/)common_system IMonitor directly.common_system (IMonitor)include/kcenon/logger/)| Component | File | Purpose | Dependencies |
|---|---|---|---|
| Main Logger | core/logger.h | Primary logging interface | common_system, interfaces/ |
| Builder | core/logger_builder.h | Fluent logger construction | core/logger.h |
| Configuration | core/logger_config.h | Configuration management | common_system |
| Log Collector | core/log_collector.h | Entry collection | interfaces/log_entry.h |
| Error Codes | core/error_codes.h | Logger-specific errors | common_system |
| Metrics | core/metrics/logger_metrics.h | Performance metrics | None |
| Monitoring | Use common_system IMonitor directly | IMonitor integration | common_system |
| Writer Interface | interfaces/log_writer_interface.h | Base writer contract | common_system |
| Logger Interface | interfaces/logger_interface.h | Base logger contract | common_system |
| Console Writer | writers/console_writer.h | ANSI console output | interfaces/ |
| File Writer | writers/file_writer.h | File output | interfaces/ |
| Rotating Writer | writers/rotating_file_writer.h | Log rotation | writers/file_writer.h |
| Network Writer | writers/network_writer.h | TCP/UDP logging | interfaces/ |
| Async Writer | writers/async_writer.h | Async wrapper | interfaces/ |
| Critical Writer | writers/critical_writer.h | Sync critical logs | interfaces/ |
| Encrypted Writer | writers/encrypted_writer.h | Encrypted output | interfaces/ |
| Base Formatter | formatters/base_formatter.h | Formatting base | interfaces/ |
| Log Filter | filters/log_filter.h | Filtering logic | interfaces/ |
| Log Router | routing/log_router.h | Routing logic | interfaces/, writers/ |
| Log Analyzer | analysis/log_analyzer.h | Pattern analysis | interfaces/ |
| Structured Logger | structured/structured_logger.h | JSON logging | core/logger.h |
| Crash-Safe Logger | safety/crash_safe_logger.h | Emergency flush | core/logger.h |
| Log Server | server/log_server.h | Network receiver | core/, writers/ |
| Common Adapter | adapters/common_logger_adapter.h | common_system bridge | common_system |
src/)| Directory | Purpose | Key Files | Build Type |
|---|---|---|---|
core/ | Core implementations | logger.cpp, logger_builder.cpp, logger_config.cpp | Compiled |
writers/ | Writer implementations | console_writer.cpp, file_writer.cpp, rotating_file_writer.cpp, network_writer.cpp, async_writer.cpp, critical_writer.cpp | Compiled |
formatters/ | Formatter implementations | base_formatter.cpp | Compiled |
filters/ | Filter implementations | log_filter.cpp | Compiled |
routing/ | Routing implementations | log_router.cpp | Compiled |
analysis/ | Analysis implementations | log_analyzer.cpp | Compiled |
structured/ | Structured logging impl | structured_logger.cpp | Compiled |
safety/ | Safety implementations | crash_safe_logger.cpp | Compiled |
server/ | Server implementations | log_server.cpp | Compiled |
adapters/ | Adapter implementations | common_logger_adapter.cpp | Compiled |
| Directory | Purpose | Framework |
|---|---|---|
tests/unit/ | Unit tests for individual components | Google Test |
tests/performance/ | Performance benchmarks | Google Benchmark |
integration_tests/ | Cross-system integration tests | Google Test |
benchmarks/ | Throughput and latency benchmarks | Google Benchmark |
Configure via CMake options: