LogSystem beta 1.4
This is a logging system project
 
载入中...
搜索中...
未找到
Xulog::Formatter类 参考

格式化器类,负责将日志消息格式化为字符串 更多...

#include <format.hpp>

Xulog::Formatter 的协作图:

Public 类型

using ptr = std::shared_ptr< Formatter >
 

Public 成员函数

 Formatter (const std::string &pattern="[%d{%y-%m-%d|%H:%M:%S}][%t][%c][%f:%l][%p]%T%m%n")
 构造格式化器
 
std::string Format (LogMsg &msg)
 对日志消息进行格式化
 
void Format (std::ostream &out, LogMsg &msg)
 对日志消息进行格式化,并输出到指定流
 
std::string getPattern ()
 获取格式化字符串
 

Private 成员函数

bool parsePattern ()
 解析格式化规则字符串
 
FormatItem::ptr createItem (const std::string &key, const std::string &value)
 根据格式化字符创建格式化子项对象
 

Private 属性

std::string _pattern
 格式化规则字符串
 
std::vector< FormatItem::ptr_items
 格式化子项集合
 

详细描述

格式化器类,负责将日志消息格式化为字符串

成员类型定义说明

◆ ptr

using Xulog::Formatter::ptr = std::shared_ptr<Formatter>

构造及析构函数说明

◆ Formatter()

Xulog::Formatter::Formatter ( const std::string &  pattern = "[%d{%y-%m-%d|%H:%M:%S}][%t][%c][%f:%l][%p]%T%m%n")
inline

构造格式化器

参数
pattern格式化规则字符串,默认为"[%d{%y-%m-%d|%H:%M:%S}][%t][%c][%f:%l][%p]%T%m%n"
注解
格式说明 d 日期,子格式{H:M:S} T 缩进 t 线程ID p 日志级别 c 日志器名称 f 文件名 l 行号 m 日志消息 n 换行
函数调用图:

成员函数说明

◆ createItem()

FormatItem::ptr Xulog::Formatter::createItem ( const std::string &  key,
const std::string &  value 
)
inlineprivate

根据格式化字符创建格式化子项对象

参数
key格式化字符
value子格式
返回
格式化子项的指针
这是这个函数的调用关系图:

◆ Format() [1/2]

std::string Xulog::Formatter::Format ( LogMsg msg)
inline

对日志消息进行格式化

参数
msg日志消息
返回
格式化后的字符串
函数调用图:
这是这个函数的调用关系图:

◆ Format() [2/2]

void Xulog::Formatter::Format ( std::ostream &  out,
LogMsg msg 
)
inline

对日志消息进行格式化,并输出到指定流

参数
out输出流
msg日志消息

◆ getPattern()

std::string Xulog::Formatter::getPattern ( )
inline

获取格式化字符串

返回
格式化字符串

◆ parsePattern()

bool Xulog::Formatter::parsePattern ( )
inlineprivate

解析格式化规则字符串

返回
是否成功解析
函数调用图:
这是这个函数的调用关系图:

类成员变量说明

◆ _items

std::vector<FormatItem::ptr> Xulog::Formatter::_items
private

格式化子项集合

◆ _pattern

std::string Xulog::Formatter::_pattern
private

格式化规则字符串