Console Library 4.7.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
logging.h File Reference

提供带颜色和级别的日志记录功能。 More...

#include <cstdint>
#include <sstream>
#include "output.h"
#include "colorful.h"
#include "time.h"
#include "strpp.h"
#include "csexc.h"
#include "literals.h"

Go to the source code of this file.

Classes

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

Namespaces

namespace  console
 本库所有组件所在的顶层命名空间。

Enumerations

enum class  Level : int8_t {
  DEBUG , INFO , WARN , ERROR ,
  FATAL
}
 日志级别枚举。 More...

Functions

class console::Logging console::logger (std::clog, true, Logging::Level::INFO)
 全局默认 logger 实例,启用颜色,级别 INFO。
void set (Level minLevel)
 设置最低日志级别(低于该级别的日志将被忽略)。
void set (bool a, bool b, bool c, bool d, bool e)
 单独设置每个级别的开关。
 Logging (std::ostream &os=std::clog, bool cf=false, Level lvl=Level::INFO)
 构造 Logging 对象。
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 级别日志并抛出 fatal_logging 异常。

Detailed Description

提供带颜色和级别的日志记录功能。

包含 Logging 类,支持 DEBUG、INFO、WARN、ERROR、FATAL 五个级别, 可控制输出级别、颜色开关,并自动附加时间戳。全局默认 logger 实例可直接使用。

Author
MrXie1109
Date
2026

Enumeration Type Documentation

◆ Level

enum class Level : int8_t
strong

日志级别枚举。

Enumerator
DEBUG 
INFO 
WARN 
ERROR 
FATAL 

Function Documentation

◆ debug()

template<class... Args>
void logger::debug ( const Args &... args)

输出 DEBUG 级别日志。

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

◆ error()

template<class... Args>
void logger::error ( const Args &... args)

输出 ERROR 级别日志。

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

◆ fatal()

template<class... Args>
void logger::fatal ( const Args &... args)

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

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

◆ info()

template<class... Args>
void logger::info ( const Args &... args)

输出 INFO 级别日志。

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

◆ Logging()

logger::Logging ( std::ostream & os = std::clog,
bool cf = false,
Level lvl = Level::INFO )

构造 Logging 对象。

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

◆ set() [1/2]

void logger::set ( bool a,
bool b,
bool c,
bool d,
bool e )

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

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

◆ set() [2/2]

void logger::set ( Level minLevel)

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

Parameters
minLevel最低级别(包含)。

◆ warn()

template<class... Args>
void logger::warn ( const Args &... args)

输出 WARN 级别日志。

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