内置 LogSink 接收器
Turbo 包含若干常用的日志接收器(LogSink),支持将日志输出到磁盘或 stderr 作为输出源。
对于诸如将日志输出到网络等特殊需求,请参考 自定义日志接收器 来实现该功能。
每日日志
daily 日志在每天固定的时间创建一个新的日志文件,并将当天的日志输出到该新文件中。
max_files 配置参数指定保留日志的最大天数。
初始化
void setup_daily_file_sink(const std::string& base_filename,
int rotation_hour = 0,
int rotation_minute = 0,
int check_interval_s = 60,
bool truncate = false,
uint16_t max_files = 0);
每小时日志
Hourly 日志在每个小时的固定分钟或秒创建一个新的日志文件,并将当前小时的日志输出到该新文件中。
max_files 配置参数指定保留日志的最大小时数;换算为天数,max_files = day*24。
初始化
void setup_hourly_file_sink(const std::string& base_filename,
int rotation_minute = 0,
int check_interval_s = 60,
bool truncate = false,
uint16_t max_files = 0);
轮转文件日志(固定大小)
rotating 日志在日志大小达到设定值(max_file_size_mb)时创建一个新的日志文件。
max_files 指定要保留的最大日志文件数量。
初始化
void setup_rotating_file_sink(const std::string& base_filename,
int max_file_size_mb = 100,
uint16_t max_files = 100,
bool truncate = false,
int check_interval_s = 60);
彩色终端日志(彩色 stderr)
color 日志的启动函数没有参数,可以直接启动。
void setup_color_stderr_sink();