loggerpro
1.4.1
Delphi 的現代可插拔日誌記錄框架
LoggerPro 相容
ILogItemRenderers
(檢查範例) System.Net.HttpClient
的附加程式)TLoggerProFileAppender
中加入了對 Linux 的支援(謝謝 charoit) TMonitor
中存在錯誤,因此將TThreadedList<T>
替換為自訂實作 ( TThreadSafeQueue<T>
)。TThreadSafeQueue<T>
不是TThreadedQueue<T>
的直接替代品,但如果您遇到相同的錯誤,則可以在其他項目中使用。TVCLMemoLogAppender.Create
取得新參數: aClearOnStartup
,可選擇在啟動時清除備忘錄。TLoggerProConsoleAppender
的改進(感謝 Fulgan)TLoggerProFileAppender
的改進;現在有一個OnLogRow
回呼可用於自訂日誌行格式。Log
方法。 *Fmt
版本已棄用,並將在未來版本中刪除 ISSUE #17RESTLogCollector
program getting_started_console;
{ $APPTYPE CONSOLE }
uses
System.SysUtils,
LoggerPro.GlobalLogger; // this is the global logger, it is perfect to understand the basic operation of LoggerPro.
begin
try
// the global logger uses a TLoggerProFileAppender, so your logs will be written on a
// set of files with automatic rolling/rotating
Log.Debug( ' Debug message ' , ' main ' ); // TLoggerProFileAppender uses the "tag" to select a different log file
Log.Info( ' Info message ' , ' main ' );
Log.Warn( ' Warning message ' , ' main ' );
Log.Error( ' Error message ' , ' errors ' );
WriteLn( ' Check "getting_started_console.00.main.log" and "getting_started_console.00.errors.log" to see your logs ' );
ReadLn;
except
on E: Exception do
Writeln(E.ClassName, ' : ' , E.Message);
end ;
end .
最靈活/正確的方法並不比全域記錄器複雜多少。檢查如何簡單地建立 logwriter 的自訂實例
program getting_started_console_appenders;
{ $APPTYPE CONSOLE }
uses
System.SysUtils,
LoggerPro, // LoggerPro core
LoggerPro.FileAppender, // File appender
LoggerPro.OutputDebugStringAppender; // OutputDebugString appender
var
Log: ILogWriter;
begin
Log := BuildLogWriter([TLoggerProFileAppender.Create,
TLoggerProOutputDebugStringAppender.Create]);
try
Log.Debug( ' Debug message ' , ' main ' );
Log.Info( ' Info message ' , ' main ' );
Log.Warn( ' Warning message ' , ' main ' );
Log.Error( ' Error message ' , ' errors ' );
WriteLn( ' Check ' );
WriteLn( ' "getting_started_console.00.main.log" ' );
WriteLn( ' "getting_started_console.00.errors.log" ' );
if DebugHook <> 0 then // inform the user where his/her logs are
begin
WriteLn( ' also, you logs have been sent to the current debugger, check the Delphi '' s EventLog window to see them. ' );
end
else
begin
WriteLn( ' ..seems that no debugger is present. The logs can be seen using DebugView. ' );
WriteLn( ' Download it from here https://technet.microsoft.com/en-us/sysinternals/debugview.aspx ' );
WriteLn( ' Learn how to use http://tedgustaf.com/blog/2011/5/use-debugview-to-view-debug-output-from-asp-net-web-application/ ' );
end ;
ReadLn;
except
on E: Exception do
WriteLn(E.ClassName, ' : ' , E.Message);
end ;
end .
該框架包含以下內建日誌附加程序
TLoggerProFileAppender
) (v1.0.0+)TLoggerProConsoleAppender
) (v1.0.0+)TLoggerProOutputDebugStringAppender
) (v1.0.0+)TVCLMemoLogAppender
) (v1.0.0+)TVCLMemoLogAppender
)-感謝https://github.com/he3p94uu(v1.3.0+)開發管道中的下一個附加程序
日誌編寫器和所有附加器都是非同步的。
檢查範例以了解如何使用每個附加器,甚至組合不同的附加器。
文件以 HTML 形式位於docs
資料夾中。
您可以安裝 Delphinus 套件管理器並將 LoggerPro 作為套件安裝在那裡。 (Delphinus-支持)