HARIX RCU v1.2.0
logger.h 文件参考

Logger日志接口。 更多...

宏定义

#define LOG_TAG   "HARIXRCU"
 
#define LOGV(...)   HarixRcu_Logger_LogPrint(LogLevels::kVerbose, LOG_TAG, __VA_ARGS__)
 
#define LOGD(...)   HarixRcu_Logger_LogPrint(LogLevels::kDebug, LOG_TAG, __VA_ARGS__)
 
#define ASSERT(cond, ...)
 ASSERT 宏定义 更多...
 
#define LOGI(...)   HarixRcu_Logger_LogPrint(LogLevels::kInfo, LOG_TAG, __VA_ARGS__)
 
#define LOGW(...)   HarixRcu_Logger_LogPrint(LogLevels::kWarn, LOG_TAG, __VA_ARGS__)
 
#define LOGE(...)   HarixRcu_Logger_LogPrint(LogLevels::kError, LOG_TAG, __VA_ARGS__)
 

类型定义

typedef void(* LogPrintFunction) (void *context, int loglevel, const char *tag, const char *msg)
 日志输出函数指针 更多...
 

枚举

enum  LogLevels {
  kNoLogging = 0 , kFatal , kError , kWarn ,
  kInfo , kDebug , kVerbose
}
 Log Level 更多...
 

函数

void HarixRcu_Logger_RegisterLogPrintFunction (void *context, LogPrintFunction func)
 注册日志回调接口 更多...
 
void HarixRcu_Logger_LogPrint (LogLevels level, const char *tag, const char *format,...)
 日志打印,在LOGI、LOGD等宏定义中被调用 更多...
 
void HarixRcu_Logger_GetStackTraceInfo ()
 获取堆栈信息 更多...
 

详细描述

Logger日志接口。

Logger,日志打印模块,主要功能:
1.提供LOGV、LOGD、LOGI、LOGW、LOGE宏接口,方便app直接输出日志,同时还提供ASSERT断言宏接口。debug版可以使用上述全部接口, release版使用LOGI、LOGW、LOGE会输出日志,LOGV、LOGD和ASSERT接口不生效;
2.提供注册日志回调接口,app可以获取日志原始内容定制日志输出格式、内容等;
3.提供获取堆栈信息接口;
4.Logger默认配置参数:存储总大小为210M,单个文件大小20M,保存路径如下:

平台 目录 说明
windows C:\Users\name\AppData\Local\harixrcu 另外可能存储目录:C:\harixrcu\
linux /var/tmp/harixrcu/
android /sdcard/cloudminds/Log/harixrcu/

如果要修改参数,配置日志存储位置和大小等,请参考如下接口,

参见
HarixRcu_InitConfig_ConfigLogger()

宏定义说明

◆ LOG_TAG

#define LOG_TAG   "HARIXRCU"

◆ LOGV

#define LOGV (   ...)    HarixRcu_Logger_LogPrint(LogLevels::kVerbose, LOG_TAG, __VA_ARGS__)

◆ LOGD

#define LOGD (   ...)    HarixRcu_Logger_LogPrint(LogLevels::kDebug, LOG_TAG, __VA_ARGS__)

◆ ASSERT

#define ASSERT (   cond,
  ... 
)
值:
if (!(cond)) \
{ \
LOGE(__VA_ARGS__); \
assert((cond)); \
}

ASSERT 宏定义

◆ LOGI

#define LOGI (   ...)    HarixRcu_Logger_LogPrint(LogLevels::kInfo, LOG_TAG, __VA_ARGS__)

◆ LOGW

#define LOGW (   ...)    HarixRcu_Logger_LogPrint(LogLevels::kWarn, LOG_TAG, __VA_ARGS__)

◆ LOGE

#define LOGE (   ...)    HarixRcu_Logger_LogPrint(LogLevels::kError, LOG_TAG, __VA_ARGS__)

类型定义说明

◆ LogPrintFunction

typedef void(* LogPrintFunction) (void *context, int loglevel, const char *tag, const char *msg)

日志输出函数指针

参数
context上下文对象实例,用于调用者在回调函数中访问自己的对象
loglevel日志等级
tag日志tag
msg日志消息

枚举类型说明

◆ LogLevels

enum LogLevels

Log Level

枚举值
kNoLogging 

没有日志输出

kFatal 

严重错误

kError 

错误

kWarn 

警告

kInfo 

信息

kDebug 

调试

kVerbose 

详细信息

函数说明

◆ HarixRcu_Logger_RegisterLogPrintFunction()

void HarixRcu_Logger_RegisterLogPrintFunction ( void *  context,
LogPrintFunction  func 
)

注册日志回调接口

参数
context上下文对象实例,用于调用者在回调函数中访问自己的对象
callback日志回调

◆ HarixRcu_Logger_LogPrint()

void HarixRcu_Logger_LogPrint ( LogLevels  level,
const char *  tag,
const char *  format,
  ... 
)

日志打印,在LOGI、LOGD等宏定义中被调用

参数
level日志等级
tag日志tag
format日志format

◆ HarixRcu_Logger_GetStackTraceInfo()

void HarixRcu_Logger_GetStackTraceInfo ( )

获取堆栈信息