NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
log_sink.hpp
浏览该文件的文档.
1#ifndef NEFORCE_LOGGING_LOG_SINK_HPP__
2#define NEFORCE_LOGGING_LOG_SINK_HPP__
3
11
14NEFORCE_BEGIN_NAMESPACE__
15
21
22inline string default_sink_format(const log_event& ev) { return "["_s + to_string(ev.level) + "] " + ev.message; }
23
31class NEFORCE_API log_sink {
32protected:
34
35public:
36 virtual ~log_sink() = default;
37
44 virtual void log(const log_event& event) = 0;
45
51 virtual void flush() = 0;
52
60};
61
62
70class NEFORCE_API console_sink final : public log_sink {
71public:
78 void log(const log_event& event) override;
79
83 void flush() override;
84};
85 // Logging
87
88NEFORCE_END_NAMESPACE__
89#endif // NEFORCE_LOGGING_LOG_SINK_HPP__
控制台输出目标
void flush() override
刷新控制台缓冲区
void log(const log_event &event) override
输出日志到控制台
日志输出目标基类
virtual void log(const log_event &event)=0
输出日志事件
void set_formatter(unique_ptr< log_formatter > formatter)
设置格式化器
unique_ptr< log_formatter > formatter_
日志格式化器
virtual void flush()=0
刷新缓冲区
独占智能指针
constexpr string to_string(const CharT &c)
将字符转换为普通字符串
日志事件定义
日志格式化器
格式化器主模板
日志事件结构体
log_level level
日志级别
string message
日志消息