📄 logmanager.h
字号:
// LogManager.h: interface for the CLogManager class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_LOGMANAGER_H__02D80C04_D681_474F_87BC_A878CF9A2FDB__INCLUDED_)
#define AFX_LOGMANAGER_H__02D80C04_D681_474F_87BC_A878CF9A2FDB__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <afxmt.h>
enum LOGTOTYPE
{
LOGTO_NONE=0, //不记录日志
LOGTO_DEBUG=1, //记录到调试信息
LOGTO_FILE=2 //记录到文件
};
//定义xml中的节点名
#define XML_LOGMANAGER_LOGTO _T("LogTo") //日志记录位置
#define XML_LOGMANAGER_LOGLEVEL _T("LogLevel") //日志记录级别
#define XML_LOGMANAGER_LOGFILE _T("LogFile") //日志记录文件
#define XML_LOGMANAGER_LOGDOMAINLIST _T("LogDomainList") //日志记录域过滤列表
#define XML_LOGMANAGER_LOGCLASSLIST _T("LogClassList") //日志记录类过滤列表
#define LoggingX CLogManager::Instance()->Logging
#define Logging2(a, b) CLogManager::Instance()->Logging(CErrorInfo(a, b, _T(""), __LINE__, __FILE__))
#define Logging3(a, b, c) CLogManager::Instance()->Logging(CErrorInfo(a, b, c, __LINE__, __FILE__))
#define Logging4(a, b, c, d) CLogManager::Instance()->Logging(CErrorInfo(a, b, c, d, __LINE__, __FILE__))
class AFX_EXT_CLASS CLogManager
{
private:
CLogManager();
public:
virtual ~CLogManager();
private:
CCriticalSection m_csLog; //日志记录锁,写文件时使用
CItemComposite m_itemLogs; //日志记录配置信息
private:
int LoggingToDebug(CString strLogging); //记录日志到调试信息
int LoggingToFile(CString strLogging); //记录日志到文件
int Logging(CString strLogging); //记录日志
int InitConfig(); //初始化日志记录配置信息
public:
static CLogManager* Instance(); //单件模式
int Logging(CErrorInfo ErrInfo); //记录日志
int Logging(const char *format, ...); //记录日志
};
#endif // !defined(AFX_LOGMANAGER_H__02D80C04_D681_474F_87BC_A878CF9A2FDB__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -