Sese Framework  x.y.z
A cross-platform framework
载入中...
搜索中...
未找到
sese::record::BlockAppender类 参考final

分块文件日志输出源类 更多...

#include <BlockAppender.h>

类 sese::record::BlockAppender 继承关系图:
sese::record::AbstractAppender

Public 成员函数

 BlockAppender (size_t block_max_size, Level level=Level::DEBUG)
 
 ~BlockAppender () noexcept override
 
void dump (const char *buffer, size_t size) noexcept override
 
- Public 成员函数 继承自 sese::record::AbstractAppender
 AbstractAppender () noexcept=default
 
virtual ~AbstractAppender () noexcept=default
 
 AbstractAppender (Level level) noexcept
 
Level getLevel () const noexcept
 
void setLevel (Level lv) noexcept
 

Private 属性

size_t size = 0
 
std::mutex mutex
 
size_t maxSize = 0
 
io::BufferedStream::Ptr bufferedStream
 
io::FileStream::Ptr fileStream
 

额外继承的成员函数

- Public 类型 继承自 sese::record::AbstractAppender
typedef std::shared_ptr< AbstractAppenderPtr
 
- Protected 属性 继承自 sese::record::AbstractAppender
Level level = Level::DEBUG
 输出阈值
 

详细描述

分块文件日志输出源类

构造及析构函数说明

◆ BlockAppender()

BlockAppender::BlockAppender ( size_t block_max_size,
Level level = Level::DEBUG )
explicit

初始化分块参数

参数
block_max_size分块的预定大小,此参数在非 DEBUG 模式下具有最小值限制,至少为 1000 * 1024,即 1MB
level等级阈值

引用了 bufferedStream, sese::io::FileStream::create(), fileStream, getDateTimeString(), maxSize , 以及 sese::io::FileStream::T_WRITE_TRUNC.

◆ ~BlockAppender()

BlockAppender::~BlockAppender ( )
overridenoexcept

引用了 bufferedStream , 以及 fileStream.

成员函数说明

◆ dump()

void BlockAppender::dump ( const char * buffer,
size_t size )
overridevirtualnoexcept

类成员变量说明

◆ bufferedStream

io::BufferedStream::Ptr sese::record::BlockAppender::bufferedStream
private

被这些函数引用 BlockAppender() , 以及 ~BlockAppender().

◆ fileStream

io::FileStream::Ptr sese::record::BlockAppender::fileStream
private

被这些函数引用 BlockAppender() , 以及 ~BlockAppender().

◆ maxSize

size_t sese::record::BlockAppender::maxSize = 0
private

被这些函数引用 BlockAppender().

◆ mutex

std::mutex sese::record::BlockAppender::mutex
private

◆ size

size_t sese::record::BlockAppender::size = 0
private

该类的文档由以下文件生成: