|
| | logger (string name) |
| | 构造指定名称的 Logger
|
| const string & | name () const noexcept |
| logger * | parent () const noexcept |
| void | set_level (log_level level) |
| | 设置级别(不影响子 logger 的显式级别)
|
| log_level | level () const noexcept |
| log_level | effective_level () const noexcept |
| bool | should_log (log_level level) const noexcept |
| | 检查指定级别是否应该输出
|
| void | add_sink (shared_ptr< log_sink > sink) |
| | 添加输出目标
|
|
void | clear_sinks () |
| | 清除所有输出目标
|
| void | enable_async (shared_ptr< thread_pool > pool=nullptr, size_t queue_size=8192, overflow_policy policy=overflow_policy::block) |
| | 启用异步模式
|
|
void | disable_async () |
| | 切换回同步模式,排空队列中的所有事件
|
| bool | is_async () const noexcept |
| void | set_filter (function< bool(const log_event &)> filter) |
| | 设置自定义过滤器
|
| void | add_context (const string &key, string value) |
| | 添加上下文键值对
|
| void | remove_context (const string &key) |
| | 移除上下文键
|
|
void | clear_context () |
| | 清除所有上下文
|
| void | set_auto_flush (int64_t interval_ms) |
| | 设置自动刷新间隔
|
| void | log (log_level level, string msg, source_location loc) |
| | 记录一条日志
|
|
void | trace (string msg, source_location loc) |
| | TRACE 级别快捷方法
|
|
void | debug (string msg, source_location loc) |
| | DEBUG 级别快捷方法
|
|
void | info (string msg, source_location loc) |
| | INFO 级别快捷方法
|
|
void | warn (string msg, source_location loc) |
| | WARN 级别快捷方法
|
|
void | error (string msg, source_location loc) |
| | ERROR 级别快捷方法
|
|
void | fatal (string msg, source_location loc) |
| | FATAL 级别快捷方法
|
|
void | flush () |
| | 刷新所有 sink
|
| shared_ptr< logger > | shared_from_this () |
| | 获取指向自身的共享指针
|
| weak_ptr< logger > | weak_from_this () noexcept |
| | 获取指向 this 的弱指针
|
层级化日志记录器
每个 logger 有唯一的名称(如 "app.network.tcp"), 通过 '.' 分隔形成层级。子 logger 默认继承父 logger 的级别。
主要功能:
- 运行时级别过滤与继承(INHERIT 标记)
- 同步 / 线程池异步双模式
- COW 上下文(零拷贝共享)
- 自定义过滤器
- 多 sink 输出
- 自动刷新
在文件 logger.hpp 第 43 行定义.