转自:http://blog.csdn.net/brightgems/article/details/814042
Log4d是apache下的一个delphi开源子项目,它的设计思想来源于Log4j,但并不是Log4j的子项目,主要目标是开发环境与生产环境下的日志输出。
一、下载 https://sourceforge.net/project/showfiles.php?group_id=145326 二、安装 将源代码下的log4delphi/src/delphi/log4delphi_D6.dpk包安装在IDE下。 三、基本使用方法 1.在dpr文件的source 中创建Logger实例(TConfiguratorUnit.doBasicConfiguration) 如: Application.Initialize; //使用运行期默认配置,输出日志文件名是'log4delphi.log’ TConfiguratorUnit.doBasicConfiguration; Application.CreateForm(TForm1, Form1); Application.Run; 2.配置Logger var logger : TLogger; begin logger := TLogger.getInstance; logger.setLevel(TLevelUnit.INFO); logger.addAppender(TFileAppender.Create('C:/test.log')); 3.在你需要的地方写Log信息 根据Level的类型,有五种类别的Log信息 logger.debug('Debug message'); logger.info('Info message'); logger.warn('Warn message'); logger.error('Error message'); logger.fatal('Fatal message'); 4.释放Logger实例 Finalization TLogger.freeInstances; 四、更深入的介绍 Log4d由五个核心的components组成:Levels, LoggingEvents, Layouts, Appenders and Loggers. 1. Levels。每一个Log event 都有一个优先级,Levels就是用来表示优先级的。因此,每一个优先级其实就是一个数值常量,可用于比较。 Level有以下几种: TLevelUnit.OFF TLevelUnit.FATAL TLevelUnit.ERROR TLevelUnit.WARN TLevelUnit.INFO TLevelUnit.DEBUG TLevelUnit.ALL 2.LoggingEvents.当产生一个Log信息或Logger实例创建时发生。 Logging 包含的重要信息有:发生时间,消息内容,已经发生的异常及优先级。 3. Layouts.它负责LoggingEvents的格式化输出样式。 The TLayout 有以下方法: function format(event : TLoggingEvent) : String; Virtual; Abstract; function getContentType() : String; Virtual; function getHeader() : String; Virtual; function getFooter() : String; Virtual; function ignoresException() : Boolean; Virtual; 常用的Layout有: l TSimpleLayout 输出内容如:DEBUG - Button Clicked l TPatternLayout.它为格式化输出提供了更多的控制。格式化的模式与Format函数相似,即以%开头,接着跟修饰符和转换符。如: Pattern="%d [%5p] %m%n" 产生的输出是 12/20/2005 4:53:33 PM [DEBUG] Debug message 12/20/2005 4:53:33 PM [ INFO] Info message 12/20/2005 4:53:33 PM [ WARN] Warn message 12/20/2005 4:53:33 PM [ERROR] Error message 12/20/2005 4:53:33 PM [FATAL] Fatal message 含义: %d 日期 %m 消息内容 %n 换行 %p 优先级 %e 异常的类名与message %L Logger的名称 4. Appenders.表示输出的目的是控制台,文件,还是数据库。 常用的有TFileAppender, TDBAppender
五、配置文件 1.程序里加载配置文件 Application.Initialize; TConfiguratorUnit.doPropertiesConfiguration('log4delphi.properties'); Application.CreateForm(TForm1, Form1); Application.Run;
2.写配置文件'log4delphi.properties' l 控制输出的信息类别 # Set this to true to turn on Log4Delphi's internal # logging log4delphi.debug=false log4delphi.info=false log4delphi.all=true l Root Logger # Set the root logger's priority threshold to DEBUG and assign an # appender named "fileAppender" to it. log4delphi.rootLogger=DEBUG, fileAppender l 配置Appender # Specify the appender class for fileAppender. log4delphi.appender.fileAppender=TFileAppender # Specify which file fileAppender should use. log4delphi.appender.fileAppender.File=app.log l 设置Layout # Specify the layout class for fileAppender. log4delphi.appender.fileAppender.layout=TSimpleLayout # Use TPattern layout log4delphi.appender.fileAppender.layout=TPatternLayout log4delphi.appender.fileAppender.layout.pattern=%d [%5p] %m%n
|
请发表评论