|
@@ -76,17 +76,17 @@ typedef char CHAR;
|
|
|
#define LOG4VTM_END_DOWHILE_WARNING()
|
|
|
#endif
|
|
|
|
|
|
-#define CMB_LOG_TYPE_CONSOLE 1 /*控制台输出*/
|
|
|
-#define CMB_LOG_TYPE_FILE 2 /*文件记录输出*/
|
|
|
-#define CMB_LOG_TYPE_SOCKET 4 /*TCP传输输出,暂未实现*/
|
|
|
-
|
|
|
-#define CMB_LOG_LEVEL_OFF 6 /*关闭任何日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_FATAL 5 /*非常严重类型的日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_ERROR 4 /*错误类型的日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_WARN 3 /*告警类型的日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_INFO 2 /*普通日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_DEBUG 1 /*调试日志输出*/
|
|
|
-#define CMB_LOG_LEVEL_TRACE 0 /*跟踪函数进出等输出*/
|
|
|
+#define CMB_LOG_TYPE_CONSOLE 1 /*鎺у埗鍙拌緭鍑�*/
|
|
|
+#define CMB_LOG_TYPE_FILE 2 /*鏂囦欢璁板綍杈撳嚭*/
|
|
|
+#define CMB_LOG_TYPE_SOCKET 4 /*TCP浼犺緭杈撳嚭锛屾殏鏈�疄鐜�*/
|
|
|
+
|
|
|
+#define CMB_LOG_LEVEL_OFF 6 /*鍏抽棴浠讳綍鏃ュ織杈撳嚭*/
|
|
|
+#define CMB_LOG_LEVEL_FATAL 5 /*闈炲父涓ラ噸绫诲瀷鐨勬棩蹇楄緭鍑�*/
|
|
|
+#define CMB_LOG_LEVEL_ERROR 4 /*閿欒�绫诲瀷鐨勬棩蹇楄緭鍑�*/
|
|
|
+#define CMB_LOG_LEVEL_WARN 3 /*鍛婅�绫诲瀷鐨勬棩蹇楄緭鍑�*/
|
|
|
+#define CMB_LOG_LEVEL_INFO 2 /*鏅�€氭棩蹇楄緭鍑�*/
|
|
|
+#define CMB_LOG_LEVEL_DEBUG 1 /*璋冭瘯鏃ュ織杈撳嚭*/
|
|
|
+#define CMB_LOG_LEVEL_TRACE 0 /*璺熻釜鍑芥暟杩涘嚭绛夎緭鍑�*/
|
|
|
#define CMB_LOG_LEVEL_ALL CMB_LOG_LEVEL_TRACE
|
|
|
|
|
|
#define CMB_LOG_TRACE 1
|
|
@@ -114,23 +114,23 @@ typedef char CHAR;
|
|
|
|
|
|
|
|
|
/*!
|
|
|
- * @brief 打印日志的函数,所有等级的日志打印均通过该宏调用实现
|
|
|
+ * @brief 鎵撳嵃鏃ュ織鐨勫嚱鏁帮紝鎵€鏈夌瓑绾х殑鏃ュ織鎵撳嵃鍧囬€氳繃璇ュ畯璋冪敤瀹炵幇
|
|
|
* @param[in]
|
|
|
- * severity: 日志等级 TRACE, INFO, WARN, ERROR, FATAL, ASSERT
|
|
|
- * ostr: 要打印的内容,支持 << 连续输出
|
|
|
+ * severity: 鏃ュ織绛夌骇 TRACE, INFO, WARN, ERROR, FATAL, ASSERT
|
|
|
+ * ostr: 瑕佹墦鍗扮殑鍐呭�锛屾敮鎸� << 杩炵画杈撳嚭
|
|
|
*/
|
|
|
#define LOG4VTM(severity, ostr) \
|
|
|
CMB_LOG_BODY(CMB_LOG_ ## severity, ostr)
|
|
|
|
|
|
/*!
|
|
|
- * @brief: 用于记录函数进出的宏定义,在进入目的函数时立即调用,在该函数退出时会打印日志
|
|
|
+ * @brief: 鐢ㄤ簬璁板綍鍑芥暟杩涘嚭鐨勫畯瀹氫箟锛屽湪杩涘叆鐩�殑鍑芥暟鏃剁珛鍗宠皟鐢�紝鍦ㄨ�鍑芥暟閫€鍑烘椂浼氭墦鍗版棩蹇�
|
|
|
*/
|
|
|
#define LOG4VTM_FUNCTION() cmb::log4vendor_tracer _FunctionTraceLogger(\
|
|
|
__FUNCTION__, cmb::log4vendor_tracer::_get_file_name(__FILE__), __LINE__)
|
|
|
|
|
|
/*!
|
|
|
- * @brief 类似于 LOG4VTM_FUNCTION(),除外还添加一个入参用于打印返回值,注意该入参的生命周期为整个函数内!!
|
|
|
- * @param[in]: pValue - 仅支持传入 int* 或 DWORD* 类型,在日志中会打印指针所存储的值
|
|
|
+ * @brief 绫讳技浜� LOG4VTM_FUNCTION()锛岄櫎澶栬繕娣诲姞涓€涓�叆鍙傜敤浜庢墦鍗拌繑鍥炲€硷紝娉ㄦ剰璇ュ叆鍙傜殑鐢熷懡鍛ㄦ湡涓烘暣涓�嚱鏁板唴锛侊紒
|
|
|
+ * @param[in]: pValue - 浠呮敮鎸佷紶鍏� int* 鎴� DWORD* 绫诲瀷锛屽湪鏃ュ織涓�細鎵撳嵃鎸囬拡鎵€瀛樺偍鐨勫€�
|
|
|
*/
|
|
|
#define TRACE4VTM_FUNCTION(pValue) cmb::log4vendor_tracer _FunctionTraceLogger(\
|
|
|
__FUNCTION__, cmb::log4vendor_tracer::_get_file_name(__FILE__), __LINE__, (pValue))
|
|
@@ -141,18 +141,18 @@ namespace cmb {
|
|
|
|
|
|
struct log_init_config_c
|
|
|
{
|
|
|
- short log_type; /*见上面 CMB_LOG_TYPE_FILE 等定义*/
|
|
|
- short log_level; /*见上面 CMB_LOG_TRACE 等定义*/
|
|
|
- char dev_name[VENDOR_BUFF_SIZE]; /*硬件名称,用于作为子目录的区分*/
|
|
|
- char log_dir[VENDOR_BUFF_SIZE]; /*在 log_type 包含 CMB_LOG_TYPE_FILE 时,该参数才有效,用于记录日志的目录*/
|
|
|
+ short log_type; /*瑙佷笂闈� CMB_LOG_TYPE_FILE 绛夊畾涔�*/
|
|
|
+ short log_level; /*瑙佷笂闈� CMB_LOG_TRACE 绛夊畾涔�*/
|
|
|
+ char dev_name[VENDOR_BUFF_SIZE]; /*纭�欢鍚嶇О锛岀敤浜庝綔涓哄瓙鐩�綍鐨勫尯鍒�*/
|
|
|
+ char log_dir[VENDOR_BUFF_SIZE]; /*鍦� log_type 鍖呭惈 CMB_LOG_TYPE_FILE 鏃讹紝璇ュ弬鏁版墠鏈夋晥锛岀敤浜庤�褰曟棩蹇楃殑鐩�綍*/
|
|
|
};
|
|
|
|
|
|
struct LOG4VENDOR_API log_init_config
|
|
|
{
|
|
|
- short log_type; /*见上面 CMB_LOG_TYPE_FILE 等定义*/
|
|
|
- short log_level; /*见上面 CMB_LOG_TRACE 等定义*/
|
|
|
- std::string dev_name; /*硬件名称,用于作为子目录的区分*/
|
|
|
- std::string log_dir; /*在 log_type 包含 CMB_LOG_TYPE_FILE 时,该参数才有效,用于记录日志的目录*/
|
|
|
+ short log_type; /*瑙佷笂闈� CMB_LOG_TYPE_FILE 绛夊畾涔�*/
|
|
|
+ short log_level; /*瑙佷笂闈� CMB_LOG_TRACE 绛夊畾涔�*/
|
|
|
+ std::string dev_name; /*纭�欢鍚嶇О锛岀敤浜庝綔涓哄瓙鐩�綍鐨勫尯鍒�*/
|
|
|
+ std::string log_dir; /*鍦� log_type 鍖呭惈 CMB_LOG_TYPE_FILE 鏃讹紝璇ュ弬鏁版墠鏈夋晥锛岀敤浜庤�褰曟棩蹇楃殑鐩�綍*/
|
|
|
|
|
|
log_init_config()
|
|
|
:log_type(CMB_LOG_TYPE_FILE)
|
|
@@ -176,14 +176,14 @@ namespace cmb {
|
|
|
static log4vendor* instance();
|
|
|
|
|
|
/*!
|
|
|
- * @brief 在调用打印日志的相关宏时,请先调用此函数进行初始化,否则将不会打印任何形式的日志内容
|
|
|
+ * @brief 鍦ㄨ皟鐢ㄦ墦鍗版棩蹇楃殑鐩稿叧瀹忔椂锛岃�鍏堣皟鐢ㄦ�鍑芥暟杩涜�鍒濆�鍖栵紝鍚﹀垯灏嗕笉浼氭墦鍗颁换浣曞舰寮忕殑鏃ュ織鍐呭�
|
|
|
*
|
|
|
* @param[in]
|
|
|
- * config: 日志初始化的配置参数
|
|
|
- * ret_msg: 防止传入的参数有误,在必要的时候记录错误信息,供上层打印排查
|
|
|
+ * config: 鏃ュ織鍒濆�鍖栫殑閰嶇疆鍙傛暟
|
|
|
+ * ret_msg: 闃叉�浼犲叆鐨勫弬鏁版湁璇�紝鍦ㄥ繀瑕佺殑鏃跺€欒�褰曢敊璇�俊鎭�紝渚涗笂灞傛墦鍗版帓鏌�
|
|
|
*
|
|
|
- * 如传入的参数依次为:"PinPad", CMB_LOG_TYPE_FILE|CMB_LOG_TYPE_CONSOLE, "C:\\rvc\\dbg"
|
|
|
- * 那么将会日志记在 "C:\\rvc\\dbg\\PinPad\\{YYYYMMDD}.log" 内,并将支持控制台输出
|
|
|
+ * 濡備紶鍏ョ殑鍙傛暟渚濇�涓猴細"PinPad", CMB_LOG_TYPE_FILE|CMB_LOG_TYPE_CONSOLE, "C:\\rvc\\dbg"
|
|
|
+ * 閭d箞灏嗕細鏃ュ織璁板湪 "C:\\rvc\\dbg\\PinPad\\{YYYYMMDD}.log" 鍐咃紝骞跺皢鏀�寔鎺у埗鍙拌緭鍑�
|
|
|
*
|
|
|
*/
|
|
|
static void init(const log_init_config& config, vtm_string& ret_msg);
|