1#ifndef NEFORCE_LOGGING_LOG_SINK_HPP__
2#define NEFORCE_LOGGING_LOG_SINK_HPP__
18NEFORCE_BEGIN_NAMESPACE__
106#ifdef NEFORCE_PLATFORM_LINUX
176NEFORCE_END_NAMESPACE__
void flush() override
刷新控制台缓冲区
void log(const log_event &event) override
输出日志到控制台
timestamp last_flush_
上次刷新的时间戳
virtual void log(const log_event &event)=0
输出一条日志事件
int64_t flush_interval_ms_
自动刷新间隔毫秒数(0=禁用)
void set_flush_interval(int64_t interval_ms)
设置自动刷新间隔
bool should_auto_flush() const
检查是否需要自动刷新
unique_ptr< log_formatter > formatter_
格式化器
virtual void flush()=0
强制刷新缓冲区
void set_formatter(unique_ptr< log_formatter > formatter)
设置格式化器
syslog_sink(string ident="", syslog_facility facility=syslog_facility::LOG_USER)
构造 syslog 输出目标
void flush() override
syslog 每次调用立即写入,无需显式刷新
void log(const log_event &event) override
将日志事件写入 syslog
static timestamp now() noexcept
获取当前时间戳
const color & level_color(log_level level)
获取日志级别对应的控制台颜色
string default_sink_format(const log_event &ev)
默认格式化函数
syslog_facility
Syslog 设施类型
constexpr string to_string(const CharT &c)
将字符转换为普通字符串