现在的位置: 首页 > 综合 > 正文

ACE实现的轻量级日志系统

2012年11月01日 ⁄ 综合 ⁄ 共 33053字 ⁄ 字号 评论关闭

    首先谈谈日志生成机制,以下所谈内容适用运行于Unix操作系统的应用程序;

 

一、日志生成规则
  1、可以限制单个日志文件的最大文件大小(一般32M~64M)。
  2、日志系统应能够分级显式,为4个级别:ERROR、WARN、MESSAGE(或INFO)、DEBUG;ERROR优先级别最高,DEBUG优先级别最低;优先级别比配置输出级别低的日志信息不输出(假设配置输出级别为ERROR,则WARN、MESSAGE、DEBUG级别的日志均不会输出)。不同级别的日志信息均在同一个文件内输出。
  3、可控制输出到控制台或文件或两者都输出。
  4、具备自动清理功能开关,可以自动删除过期的日志文件,过期时间可以配置(如6个月,则系统定期清理6个月前的日志)。

日志输出级别原则:
 DEBUG信息包括:收发socket包的二进制或文本信息、关键点的打印信息、SQL语句信息等调式信息。
 MESSAGE信息包括:程序正常启动、链路连接、能体现完整业务流程的所有消息包(如各个接口的收发消息包、消息包在内部的流转过程)
 WARN信息包括:不影响业务逻辑的异常,如客户端重复登陆,数据库重连等信息。
 ERROR信息包括:影响业务正常开展的严重错误,如程序退出,数据库链路异常、用户数据格式非法等。

二、日志输出规则
日志文件输出路径:
  $HOME/logs/<项目名称(可选)>/模块名称/年/月/日/文件名_时_分_秒.log

日志输出内容格式:
  [时间] [级别] <日志输出位置(可选)> <进程或线程号(可选)> :日志内容

实现代码如下:

 

1、 ffcs_logger.cpp

 

2、ffcs_logger.h

 

3、main.cpp

 

4、config.cfg

 

 

 

 

抱歉!评论已关闭.