WEB开发网
开发学院软件开发VC 通用的应用程序高级日志系统 阅读

通用的应用程序高级日志系统

 2009-03-16 20:02:17 来源:WEB开发网   
核心提示: 在 CLog 类中有三个日志记录函数:LogRawString —— 跟踪记录原始串,不需要格式化存储;LogString —— 跟踪记录特定级别和格式的日志信息,通用的应用程序高级日志系统(3),有两个函数名字都相同,其差别是输出格式不同,

在 CLog 类中有三个日志记录函数:

LogRawString —— 跟踪记录原始串,不需要格式化存储;

LogString —— 跟踪记录特定级别和格式的日志信息,有两个函数名字都相同,其差别是输出格式不同,两种格式是:

std::string
char* 

LogFormatString —— 格式化函数,实际上是对 printf 函数的封装。

大多数情况下,开发人员如果需要超过三种类型以上的信息,可以实现 CLog 提供的一个虚拟函数 LevelText,在参数中提供一个表示日志级别 LEVEL 的数字。函数将用串形式返回一个类型名。默认情况下,一种类型规定的格式符号限制是12种,但可以用 SetMessageFormat 函数修改格式模板串。

如果要在应用程序中使用日志机制,请在工程中包含下列头文件:

#include "clog.h"
#include "cfunclog.h"
#include "cwinlog.h" 
// 在 GUI 窗口中显示日志信息时包含
#include "cfilelog.h" 
// 将日志信息写入文件时包含
...

CFuncLog 类不是必须的,它只是简化一些日志模块的功能,如:进入函数和退出函数。

特殊格式和所有主要的日志操作都在 CLog 类中实现。所以你的选择很灵活。

注意:CWinLog 类存储跟踪窗口中的信息,它不是多进程安全的。但多进程的日志可以使用 CFileLog 类。它将所有跟踪信息存储到文件。所有文件的操作通过操作系统进行同步。

如何使用日志模块

1、创建 CLog 类实例:

CLog *m_pLog = new CLog( new CFileLog( "c:\log.log" ), LOG_MAX_LEVEL, true ); 

上一页  1 2 3 4  下一页

Tags:通用 应用程序 高级

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接