基于文件大小的滚动文件日志落地实现 更多...
#include <sink.hpp>
Public 成员函数 | |
RollSinkBySize (const std::string &basename, size_t max_size) | |
构造函数 | |
void | log (const char *data, size_t len) |
日志写入到滚动文件 | |
![]() | |
LogSink () | |
virtual | ~LogSink () |
Private 成员函数 | |
std::string | creatNewFIle () |
创建新文件 | |
Private 属性 | |
std::string | _basename |
基础文件名 | |
std::ofstream | _ofs |
文件输出流 | |
size_t | _max_fsize |
最大文件大小 | |
size_t | _current_fsize |
当前文件大小 | |
size_t | _cnt |
文件计数 | |
额外继承的成员函数 | |
![]() | |
using | ptr = std::shared_ptr< LogSink > |
智能指针类型 | |
基于文件大小的滚动文件日志落地实现
该类实现了将日志写入到文件,并在文件大小超过限制时创建新文件的功能。
|
inline |
构造函数
basename | 基础文件名 |
max_size | 最大文件大小 |
创建并打开新的日志文件。
|
inlineprivate |
创建新文件
根据当前时间生成新文件名。
|
inlinevirtual |
|
private |
基础文件名
|
private |
文件计数
|
private |
当前文件大小
|
private |
最大文件大小
|
private |
文件输出流