您的位置:首页 > 编程语言 > Delphi

没落的delphi的日志类log4delphi

2012-07-31 18:44 375 查看
以前用过.net 和C++的日志类log4net log4cpp发现非常好用,性能稳定。

最近修改一个以前的delphi程序,想增加个日志功能。描述程序运行情况。经过简单的查找log4delphi,与上述是相同的开源网站提供的。

安装:

http://sourceforge.net/projects/log4delphi/files/下载0.8版本,解压到文件夹。打开文件夹"...\log4delphi-0.8",新建一个文件夹"build";编译的时候可能出现个错误提示TFileUnit不存在直接将他删除重新编译即可!

详见:http://blog.csdn.net/brightgems/article/details/814042

下面是整理网上的资料,自己的心得。

使用方法:

1.编译完成后然后安装(打开dpk)

2.创建新项目,在程序运行的开始部分类似代码如下

uses

...TConfiguratorUnit...

begin

Application.Initialize;

TConfiguratorUnit.doPropertiesConfiguration('log4delphi.properties'); //加载配置文件,注意此文件必须存在否则出现错误

...

Application.Run;

TLogger.freeInstances; //释放TLogger

end.

//下面是在需要的地方

在uses 添加TLoggerUnit后

var

logger : TLogger;

begin

logger := TLogger.getInstance;

logger.ERROR('error'); //稍后看文件即可看到日志

end;

log4delphi.properties说明(在example文件夹下)

log4delphi.debug=false #关闭调试模式

log4delphi.rootLogger=DEBUG, fileAppender #设置rootLoger的LEVEL为DEBUG,名字为fileAppender下面能用到或者换句话说只有DEBUG等级以上的才能记录日志

#log4delphi.appender.fileAppender=TFileAppender //单个文件

log4delphi.appender.fileAppender=TRollingFileAppender //从代码中得出多个文件保存日志。单个文件的最大尺寸使用MaxFileSize设置,文件个数使用MaxBackupIndex设置。

log4delphi.appender.fileAppender.MaxBackupIndex=10

log4delphi.appender.fileAppender.MaxFileSize=1M

log4delphi.appender.fileAppender.File=app.log //文件名称

log4delphi.appender.fileAppender.AppDir=true //exe所在目录

log4delphi.appender.fileAppender.Append=true //追加方式

#对日志的输出格式的设置

#log4delphi.appender.fileAppender.layout=TSimpleLayout //此种方式最简单,日志文件中只写入你输出的内容如:logger.DEBUG('ddd'); 日志只记录ddd

#log4delphi.appender.fileAppender.layout=TXMLLayout //未测试

#log4delphi.appender.fileAppender.layout=THTMLLayout //未测试

#log4delphi.appender.fileAppender.layout.Title=Document Title //未测试

log4delphi.appender.fileAppender.layout=TPatternLayout //相当于自定义,使用Pattern参数来设置日志输出格式

log4delphi.appender.fileAppender.layout.Pattern=%d{yyyy-mm-dd hh:nn:ss:zzz} [%5p] [%L] [%e] %m%n

%d 输出时间 {}中的内容为时间的格式

%5p Level信息

%L Logger的名称例如上面的rootLogger 他输出 ROOT

%e except信息

%m 消息

%n 换行

注意:我翻译的东西可能很烂,只要明白使用的方法即可。对于可能的误导本人改不负责。呵呵

评价没有.net 和 C++版功能强大,可能由于delphi的没落有关!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: