doc_id: "LOG-ARCH-008" doc_title: "Logger System - 프로젝트 구조" doc_version: "1.0.0" doc_date: "2026-04-04" doc_status: "Released" project: "logger_system"
logger_system/
├── 📁 include/kcenon/logger/ # Public headers & interfaces
│ ├── 📁 core/ # Core APIs (logger, config, builder)
│ │ ├── logger.h # Main logger interface
│ │ ├── config.h # Configuration management
│ │ └── builder.h # Logger builder pattern
│ ├── 📁 interfaces/ # Interface definitions
│ │ ├── writer_interface.h # Base writer interface
│ │ ├── formatter_interface.h # Base formatter interface
│ │ └── filter_interface.h # Base filter interface
│ ├── 📁 writers/ # Writer interfaces
│ │ ├── file_writer.h # File output writer
│ │ ├── console_writer.h # Console output writer
│ │ └── network_writer.h # Network output writer
│ ├── 📁 formatters/ # Formatter interfaces
│ │ ├── text_formatter.h # Plain text formatting
│ │ ├── json_formatter.h # JSON formatting
│ │ └── xml_formatter.h # XML formatting
│ └── 📁 utils/ # Public utilities
│ ├── log_level.h # Log level definitions
│ ├── timestamp.h # Timestamp utilities
│ └── thread_safe.h # Thread safety utilities
├── 📁 src/ # Implementation files
│ ├── 📁 core/ # Core implementation
│ │ ├── logger.cpp # Main logger implementation
│ │ ├── config.cpp # Configuration implementation
│ │ └── builder.cpp # Builder implementation
│ ├── 📁 impl/ # Private implementations
│ │ ├── 📁 writers/ # Writer implementations
│ │ │ ├── file_writer.cpp
│ │ │ ├── console_writer.cpp
│ │ │ └── network_writer.cpp
│ │ ├── 📁 formatters/ # Formatter implementations
│ │ │ ├── text_formatter.cpp
│ │ │ ├── json_formatter.cpp
│ │ │ └── xml_formatter.cpp
│ │ ├── 📁 filters/ # Filter implementations
│ │ │ ├── level_filter.cpp
│ │ │ ├── pattern_filter.cpp
│ │ │ └── rate_limiter.cpp
│ │ ├── 📁 async/ # Async components
│ │ │ ├── async_logger.cpp
│ │ │ ├── buffer_manager.cpp
│ │ │ └── worker_thread.cpp
│ │ ├── 📁 di/ # Dependency injection container
│ │ │ ├── container.cpp
│ │ │ └── factory.cpp
│ │ └── 📁 monitoring/ # Performance monitoring adapters
│ │ ├── metrics_collector.cpp
│ │ └── health_monitor.cpp
│ └── 📁 utils/ # Utility implementations
│ ├── timestamp.cpp # Timestamp implementation
│ ├── thread_safe.cpp # Thread safety implementation
│ └── string_utils.cpp # String utility functions
├── 📁 tests/ # Comprehensive test suite
│ ├── 📁 unit/ # Unit tests
│ │ ├── core_tests/ # Core functionality tests
│ │ ├── writer_tests/ # Writer component tests
│ │ ├── formatter_tests/ # Formatter component tests
│ │ └── filter_tests/ # Filter component tests
│ ├── 📁 integration/ # Integration tests
│ │ ├── ecosystem_tests/ # Cross-system integration
│ │ ├── performance_tests/ # Performance integration
│ │ └── stress_tests/ # Stress testing
│ └── 📁 benchmarks/ # Performance benchmarks
│ ├── throughput_bench/ # Throughput measurements
│ ├── latency_bench/ # Latency measurements
│ └── memory_bench/ # Memory usage benchmarks
├── 📁 examples/ # Usage examples & demos
│ ├── 📁 basic/ # Basic usage examples
│ ├── 📁 advanced/ # Advanced configuration examples
│ └── 📁 integration/ # System integration examples
├── 📁 docs/ # Comprehensive documentation
│ ├── 📁 api/ # API documentation
│ ├── 📁 guides/ # User guides & tutorials
│ ├── 📁 architecture/ # Architecture documentation
│ └── 📁 performance/ # Performance guides & benchmarks
├── 📁 scripts/ # Build & utility scripts
│ ├── build.sh # Build automation
│ ├── test.sh # Test execution
│ └── benchmark.sh # Performance testing
├── 📄 CMakeLists.txt # Build configuration
├── 📄 .clang-format # Code formatting rules
└── 📄 README.md # Project overview & documentation