Delphi另一个日志库LoggerPro

职场菊菊子 2024-04-19 09:08:06

之前的文章给大家分享过如何在Delphi中使用Log4D生成日志。今天继续分享另一个更强大的Delphi日志组件LoggerPro。

基本用法

LoggerPro提供了一个全局日志单元LoggerPro.GlobalLogger,默认把日志写到文件中,并且可以自动切割日志。该单元对外提供了Log日志对象,开箱即用,可以不用做过多额外设置。

LoggerPro按照日志等级,提供了其他常用的Info,WARN,Error,Debug等方法。

program ConsoleApp20240418;{$APPTYPE CONSOLE}uses System.SysUtils, LoggerPro.GlobalLogger; begin try Log.Debug('Debug message', 'main'); //第二个参数为标签,用于生成日志文件 Log.Info('Info message', 'main'); Log.Warn('Warning message', 'main'); Log.Error('Error message', 'errors'); WriteLn('在 "ConsoleApp20240418.00.main.log" 和 "ConsoleApp20240418.00.errors.log" 文件中查看日志'); ReadLn; except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end;end.

生成的日志文件如下:

默认日志格式如下:

自定义日志

我们也可以自定义日志信息。上面的案例,日志址输出到了文件,我们也可以同时把日志输出到控制台。也可以设置其他日志格式,比如文件名,日志切分信息,日志格式等等。

下面的案例,日志可以同时输出到文件和控制台。

TLoggerProFileAppender,控制日志输出到文件。可以在Create构造函数提供更多设置TLoggerProConsoleAppender,控制日志输出到控制台。可以在Create构造函数提供更多设置参数。program ConsoleApp20240418;{$APPTYPE CONSOLE}{$R *.res}uses System.SysUtils, LoggerPro, LoggerPro.FileAppender, LoggerPro.ConsoleAppender ;var Logger: ILogWriter;procedure SetupLogger;begin Logger := BuildLogWriter([ TLoggerProFileAppender.Create, TLoggerProConsoleAppender.Create ]);end;procedure Test2;begin try Logger.Debug('Debug msg', 'main'); Logger.Info('Info msg', 'main'); Logger.Error('Error. Quitting', 'errors'); except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end;end;begin try // Setup logger SetupLogger; // Use logger Test2; Readln; except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end;end.
0 阅读:0

职场菊菊子

简介:感谢大家的关注