ngl_server 1.0
基于 Actor 模型的 C++ 服务器框架
nlog.cpp File Reference

实现日志路由到控制台和日志actor More...

Functions

ptr_logitem ngl::get_log (const std::source_location &asource, ELOGLEVEL alevel, ELOG_TYPE atype, bool anet)
 获取日志项(内部工厂函数)
ptr_logitem ngl::log_debug (const std::source_location &asource)
 获取DEBUG级别日志项
ptr_logitem ngl::log_debug_net (const std::source_location &asource)
 获取DEBUG级别网络日志项
ptr_logitem ngl::log_info (const std::source_location &asource)
 获取INFO级别日志项
ptr_logitem ngl::log_info_net (const std::source_location &asource)
 获取INFO级别网络日志项
ptr_logitem ngl::log_warn (const std::source_location &asource)
 获取WARN级别日志项
ptr_logitem ngl::log_warn_net (const std::source_location &asource)
 获取WARN级别网络日志项
ptr_logitem ngl::log_error (const std::source_location &asource)
 获取ERROR级别日志项
ptr_logitem ngl::log_error_net (const std::source_location &asource)
 获取ERROR级别网络日志项
ptr_logitem ngl::log_bi (const std::source_location &asource)
 获取BI日志项

Variables

ptr_logitem ngl::g_nonelog = std::make_shared<nactor_logitem>()
 共享的空操作日志项,用于级别被过滤时避免分支

Detailed Description

实现日志路由到控制台和日志actor

提供以下功能:

  1. 日志级别名称映射(elog_name)
  2. 日志项发送(nactor_logitem::send_log)
  3. 日志工厂函数(log_debug/log_info/log_warn/log_error等)
  4. 网络日志和BI日志的特殊路由
Note
日志通过时间轮异步投递到日志actor
See also
nlog.h, nactor_logitem

Function Documentation

◆ get_log()

ptr_logitem ngl::get_log ( const std::source_location & asource,
ELOGLEVEL alevel,
ELOG_TYPE atype,
bool anet )

获取日志项(内部工厂函数)

根据日志级别决定返回实际日志项或空操作日志项

Parameters
asource源码位置信息
alevel日志级别
atype日志类型
anet是否为网络日志
Returns
日志项共享指针

◆ log_bi()

ptr_logitem ngl::log_bi ( const std::source_location & asource)

获取BI日志项

获取业务智能日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_debug()

ptr_logitem ngl::log_debug ( const std::source_location & asource)

获取DEBUG级别日志项

获取调试级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针

立即捕获源位置,以便最终的actor端格式化器能打印原始调用位置。

Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_debug_net()

ptr_logitem ngl::log_debug_net ( const std::source_location & asource)

获取DEBUG级别网络日志项

获取网络调试级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_error()

ptr_logitem ngl::log_error ( const std::source_location & asource)

获取ERROR级别日志项

获取错误级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_error_net()

ptr_logitem ngl::log_error_net ( const std::source_location & asource)

获取ERROR级别网络日志项

获取网络错误级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_info()

ptr_logitem ngl::log_info ( const std::source_location & asource)

获取INFO级别日志项

获取信息级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_info_net()

ptr_logitem ngl::log_info_net ( const std::source_location & asource)

获取INFO级别网络日志项

获取网络信息级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_warn()

ptr_logitem ngl::log_warn ( const std::source_location & asource)

获取WARN级别日志项

获取警告级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针

◆ log_warn_net()

ptr_logitem ngl::log_warn_net ( const std::source_location & asource)

获取WARN级别网络日志项

获取网络警告级别日志入口点。

Parameters
asource源码位置
Returns
日志项共享指针
Parameters
asource源代码位置,默认为当前调用位置
Returns
日志项共享指针