Common System 0.2.0
Common interfaces and patterns for system integration
Loading...
Searching...
No Matches
logger_interface.h File Reference

Standard logger interface for all systems. More...

#include <algorithm>
#include <array>
#include <chrono>
#include <functional>
#include <memory>
#include <string>
#include <string_view>
#include <utility>
#include "../patterns/result.h"
#include "../utils/enum_serialization.h"
#include "../utils/source_location.h"
Include dependency graph for logger_interface.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::common::enum_traits< interfaces::log_level >
 Specialization of enum_traits for log_level. More...
 
struct  kcenon::common::interfaces::log_entry
 Standard log entry structure. More...
 
interface  kcenon::common::interfaces::ILogger
 Standard interface for logging implementations. More...
 
interface  kcenon::common::interfaces::ILoggerProvider
 Interface for modules that provide logger implementations. More...
 
struct  kcenon::common::interfaces::logger_config
 Configuration for logger instances. More...
 
interface  kcenon::common::interfaces::ILoggerRegistry
 Phase 2: Global logger registry interface. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::common
 Core interfaces.
 
namespace  kcenon::common::interfaces
 

Typedefs

using kcenon::common::interfaces::LoggerFactory = std::function<std::shared_ptr<ILogger>()>
 Factory function type for creating logger instances.
 

Enumerations

enum class  kcenon::common::interfaces::log_level {
  kcenon::common::interfaces::trace = 0 , kcenon::common::interfaces::debug = 1 , kcenon::common::interfaces::info = 2 , kcenon::common::interfaces::warning = 3 ,
  kcenon::common::interfaces::warn = 3 , kcenon::common::interfaces::error = 4 , kcenon::common::interfaces::critical = 5 , kcenon::common::interfaces::fatal = 5 ,
  kcenon::common::interfaces::off = 6 , kcenon::common::interfaces::trace = 0 , kcenon::common::interfaces::debug = 1 , kcenon::common::interfaces::info = 2 ,
  kcenon::common::interfaces::warning = 3 , kcenon::common::interfaces::error = 4 , kcenon::common::interfaces::critical = 5 , kcenon::common::interfaces::off = 6
}
 Standard log levels. More...
 

Functions

std::string kcenon::common::interfaces::to_string (log_level level)
 Convert log level to string.
 
log_level kcenon::common::interfaces::from_string (const std::string &str)
 Parse log level from string (case-insensitive)
 

Detailed Description

Standard logger interface for all systems.

This header defines the standard logging interface to be used across all systems for consistent logging behavior.

Note
Issue #177: Extended with C++20 source_location support.
Issue #217: Removed deprecated file/line/function API in v3.0.0. Use the source_location-based log() method for all logging.

Definition in file logger_interface.h.