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

标准输出日志落地实现 更多...

#include <sink.hpp>

类 Xulog::StdoutSink 继承关系图:
Xulog::StdoutSink 的协作图:

Public 类型

enum class  Color { Enable , Unenable }
 日志颜色设置 更多...
 
- Public 类型 继承自 Xulog::LogSink
using ptr = std::shared_ptr< LogSink >
 智能指针类型
 

Public 成员函数

 StdoutSink (Color enable=Color::Unenable)
 构造函数
 
void log (const char *data, size_t len)
 日志写入到标准输出
 
- Public 成员函数 继承自 Xulog::LogSink
 LogSink ()
 
virtual ~LogSink ()
 

Private 成员函数

std::string setColorBasedOnLogLevel (const char *message, size_t len)
 根据日志级别设置颜色
 

Private 属性

const std::string COLOR_DEBUG = "\033[36m"
 DEBUG 颜色
 
const std::string COLOR_INFO = "\033[32m"
 INFO 颜色
 
const std::string COLOR_WARN = "\033[33m"
 WARN 颜色
 
const std::string COLOR_ERROR = "\033[31m"
 ERROR 颜色
 
const std::string COLOR_FATAL = "\033[35m"
 FATAL 颜色
 
const std::string COLOR_RESET = "\033[0m"
 颜色重置
 
Color _enable_color
 颜色启用状态
 

详细描述

标准输出日志落地实现

该类实现了将日志输出到标准输出的功能,并支持日志级别的颜色显示。

成员枚举类型说明

◆ Color

enum class Xulog::StdoutSink::Color
strong

日志颜色设置

枚举值
Enable 
Unenable 

构造及析构函数说明

◆ StdoutSink()

Xulog::StdoutSink::StdoutSink ( Color  enable = Color::Unenable)
inline

构造函数

参数
enable是否启用颜色显示

成员函数说明

◆ log()

void Xulog::StdoutSink::log ( const char *  data,
size_t  len 
)
inlinevirtual

日志写入到标准输出

参数
data日志数据
len数据长度

根据设置输出带颜色的日志。

实现了 Xulog::LogSink.

函数调用图:

◆ setColorBasedOnLogLevel()

std::string Xulog::StdoutSink::setColorBasedOnLogLevel ( const char *  message,
size_t  len 
)
inlineprivate

根据日志级别设置颜色

参数
message日志消息
len消息长度
返回
std::string 带颜色的日志消息
这是这个函数的调用关系图:

类成员变量说明

◆ _enable_color

Color Xulog::StdoutSink::_enable_color
private

颜色启用状态

◆ COLOR_DEBUG

const std::string Xulog::StdoutSink::COLOR_DEBUG = "\033[36m"
private

DEBUG 颜色

◆ COLOR_ERROR

const std::string Xulog::StdoutSink::COLOR_ERROR = "\033[31m"
private

ERROR 颜色

◆ COLOR_FATAL

const std::string Xulog::StdoutSink::COLOR_FATAL = "\033[35m"
private

FATAL 颜色

◆ COLOR_INFO

const std::string Xulog::StdoutSink::COLOR_INFO = "\033[32m"
private

INFO 颜色

◆ COLOR_RESET

const std::string Xulog::StdoutSink::COLOR_RESET = "\033[0m"
private

颜色重置

◆ COLOR_WARN

const std::string Xulog::StdoutSink::COLOR_WARN = "\033[33m"
private

WARN 颜色