|
Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
|
Abstract interface for integration backends. More...
#include <integration_backend.h>


Public Member Functions | |
| virtual | ~integration_backend ()=default |
| Virtual destructor. | |
| virtual log_level | normalize_level (int external_level) const =0 |
| Normalize external log level to internal level. | |
| virtual std::string | get_backend_name () const =0 |
| virtual bool | requires_initialization () const |
| Check if backend requires special initialization. | |
| virtual bool | initialize () |
| Initialize the backend. | |
| virtual void | shutdown () |
| Shutdown the backend. | |
| virtual | ~integration_backend ()=default |
| Virtual destructor. | |
| virtual common::interfaces::log_level | normalize_level (int external_level) const =0 |
| Normalize external log level to internal level. | |
| virtual std::string | get_backend_name () const =0 |
| Get the backend name. | |
| virtual bool | requires_initialization () const |
| Check if backend requires special initialization. | |
| virtual bool | initialize () |
| Initialize the backend. | |
| virtual void | shutdown () |
| Shutdown the backend. | |
Abstract interface for integration backends.
This interface allows the logger system to integrate with different external systems (e.g., thread_system, common_system) without compile-time conditional compilation. Implementations provide level conversion and optional metrics reporting capabilities.
This interface allows the logger system to integrate with different external systems (e.g., thread_system, common_system) without compile-time conditional compilation. Implementations provide level conversion and optional metrics reporting capabilities.
Definition at line 52 of file backends.cppm.
|
virtualdefault |
|
exportvirtualdefault |
Virtual destructor.
|
pure virtual |
|
exportpure virtual |
Get the backend name.
Implemented in kcenon::logger::backends::standalone_backend, and kcenon::logger::backends::standalone_backend.
|
inlinevirtual |
Initialize the backend.
Performs any necessary initialization steps for the backend. This method is called during logger construction if requires_initialization() returns true.
Definition at line 114 of file integration_backend.h.
|
inlineexportvirtual |
Initialize the backend.
Definition at line 95 of file backends.cppm.
|
pure virtual |
Normalize external log level to internal level.
| external_level | External system's log level (as integer) |
Converts log levels from external systems to the common::interfaces::log_level enumeration. Different systems may use different level schemes (ascending, descending, different naming), and this method handles the conversion.
Implemented in kcenon::logger::backends::standalone_backend, and kcenon::logger::backends::standalone_backend.
|
exportpure virtual |
Normalize external log level to internal level.
| external_level | External system's log level (as integer) |
Converts log levels from external systems to the common::interfaces log_level enumeration. Different systems may use different level schemes.
Implemented in kcenon::logger::backends::standalone_backend, and kcenon::logger::backends::standalone_backend.
|
inlinevirtual |
Check if backend requires special initialization.
Some backends may require initialization steps (e.g., registering with external systems). This method indicates whether such steps are needed.
Reimplemented in kcenon::logger::backends::standalone_backend, and kcenon::logger::backends::standalone_backend.
Definition at line 98 of file integration_backend.h.
|
inlineexportvirtual |
Check if backend requires special initialization.
Reimplemented in kcenon::logger::backends::standalone_backend, and kcenon::logger::backends::standalone_backend.
Definition at line 85 of file backends.cppm.
|
inlinevirtual |
Shutdown the backend.
Performs any necessary cleanup steps for the backend. This method is called during logger destruction.
Definition at line 128 of file integration_backend.h.
|
inlineexportvirtual |
Shutdown the backend.
Definition at line 104 of file backends.cppm.