log4delphi使用(转)

转自: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

log4delphi使用(转),布布扣,bubuko.com

时间: 2024-10-15 13:50:38

log4delphi使用(转)的相关文章

Delphi 7下使用Log4Delphi 0.8日志组件

Log4Delphi是一个开放源码项目,旨在制作用于Borland的Delphi高质量实用的日志套件,是基于Apache Software Foundation的log4j包. 安装:        1.从http://sourceforge.net/projects/log4delphi/files/下载0.8版本,解压到文件夹.打开文件夹"...\log4delphi-0.8",新建一个文件夹"build":        2.运行Delphi 7,打开组件包&

Log4delphi使用心得

因为delphi不是我的主力开发工具,所有一直没有使用一个正式的日志组件.偶尔要记日志时,就复制同事的一个简单的文件日志函数.现在又要用到delphi日志了,决定找个通用的日志组件,造福共事的Delphi程序员们. 让我失望的是,日志功能好像对Delphi程序员没什么吸引力,百度“Delphi 日志”竟然没有什么有用线索.还是Google“Delphi logger”有点用. 不管怎样,让我找到了log4delphi.明显国内用的人不多,不知大家是否有更好的日志类.对我来说,log4delphi