Console Library 8.0.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
console::BasicLogging< CharT, Traits > Class Template Reference

日志记录器,支持多级别、颜色输出和自动时间戳。 More...

#include <logging.h>

Public Types

enum class  Level : int8_t {
  DEBUG , INFO , WARN , ERROR ,
  FATAL
}
 日志级别枚举。 More...
using string_type = std::basic_string<CharT, Traits>

Public Member Functions

void set (Level minLevel)
 设置最低日志级别(低于该级别的日志将被忽略)。
void set (bool a, bool b, bool c, bool d, bool e)
 单独设置每个级别的开关。
 BasicLogging (std::basic_ostream< CharT, Traits > &os=std::clog, bool cf=false, Level lvl=Level::INFO)
 构造 BasicLogging 对象。
template<class... Args>
void debug (const Args &...args)
 输出 DEBUG 级别日志。
template<class... Args>
void info (const Args &...args)
 输出 INFO 级别日志。
template<class... Args>
void warn (const Args &...args)
 输出 WARN 级别日志。
template<class... Args>
void error (const Args &...args)
 输出 ERROR 级别日志。
template<class... Args>
void fatal (const Args &...args)
 输出 FATAL 级别日志并抛出 FatalLogging 异常。

Private Attributes

BasicOutput< CharT, Traits > output
 输出器
bool colorful
 是否启用颜色
bool settings [5]
 每个级别的开关,索引对应 Level 枚举值

Detailed Description

template<class CharT = char, class Traits = std::char_traits<CharT>>
class console::BasicLogging< CharT, Traits >

日志记录器,支持多级别、颜色输出和自动时间戳。

Template Parameters
CharT字符类型。
Traits字符特征类型。

使用 BasicOutput 类进行格式化输出,可设置最低日志级别或单独控制每个级别的开关。 FATAL 级别会抛出 FatalLogging 异常。

Member Typedef Documentation

◆ string_type

template<class CharT = char, class Traits = std::char_traits<CharT>>
using console::BasicLogging< CharT, Traits >::string_type = std::basic_string<CharT, Traits>

Member Enumeration Documentation

◆ Level

template<class CharT = char, class Traits = std::char_traits<CharT>>
enum class console::BasicLogging::Level : int8_t
strong

日志级别枚举。

Enumerator
DEBUG 
INFO 
WARN 
ERROR 
FATAL 

Constructor & Destructor Documentation

◆ BasicLogging()

template<class CharT = char, class Traits = std::char_traits<CharT>>
console::BasicLogging< CharT, Traits >::BasicLogging ( std::basic_ostream< CharT, Traits > & os = std::clog,
bool cf = false,
Level lvl = Level::INFO )
inline

构造 BasicLogging 对象。

Parameters
os输出流,默认为 std::clog。
cf是否启用颜色,默认 false。
lvl最低日志级别,默认 INFO。

Member Function Documentation

◆ debug()

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class... Args>
void console::BasicLogging< CharT, Traits >::debug ( const Args &... args)
inline

输出 DEBUG 级别日志。

Template Parameters
Args可变参数类型。
Parameters
args要输出的内容(可多个,自动转换为字符串)。

◆ error()

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class... Args>
void console::BasicLogging< CharT, Traits >::error ( const Args &... args)
inline

输出 ERROR 级别日志。

Template Parameters
Args可变参数类型。
Parameters
args要输出的内容。

◆ fatal()

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class... Args>
void console::BasicLogging< CharT, Traits >::fatal ( const Args &... args)
inline

输出 FATAL 级别日志并抛出 FatalLogging 异常。

Template Parameters
Args可变参数类型。
Parameters
args要输出的内容。
Exceptions
FatalLogging异常,异常消息包含日志内容。

◆ info()

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class... Args>
void console::BasicLogging< CharT, Traits >::info ( const Args &... args)
inline

输出 INFO 级别日志。

Template Parameters
Args可变参数类型。
Parameters
args要输出的内容。

◆ set() [1/2]

template<class CharT = char, class Traits = std::char_traits<CharT>>
void console::BasicLogging< CharT, Traits >::set ( bool a,
bool b,
bool c,
bool d,
bool e )
inline

单独设置每个级别的开关。

Parameters
aDEBUG 开关
bINFO 开关
cWARN 开关
dERROR 开关
eFATAL 开关

◆ set() [2/2]

template<class CharT = char, class Traits = std::char_traits<CharT>>
void console::BasicLogging< CharT, Traits >::set ( Level minLevel)
inline

设置最低日志级别(低于该级别的日志将被忽略)。

Parameters
minLevel最低级别(包含)。

◆ warn()

template<class CharT = char, class Traits = std::char_traits<CharT>>
template<class... Args>
void console::BasicLogging< CharT, Traits >::warn ( const Args &... args)
inline

输出 WARN 级别日志。

Template Parameters
Args可变参数类型。
Parameters
args要输出的内容。

Member Data Documentation

◆ colorful

template<class CharT = char, class Traits = std::char_traits<CharT>>
bool console::BasicLogging< CharT, Traits >::colorful
private

是否启用颜色

◆ output

template<class CharT = char, class Traits = std::char_traits<CharT>>
BasicOutput<CharT, Traits> console::BasicLogging< CharT, Traits >::output
private

输出器

◆ settings

template<class CharT = char, class Traits = std::char_traits<CharT>>
bool console::BasicLogging< CharT, Traits >::settings[5]
private

每个级别的开关,索引对应 Level 枚举值


The documentation for this class was generated from the following file: