loggerpro
1.4.1
เฟรมเวิร์กการบันทึกที่ทันสมัยและเสียบได้สำหรับ Delphi
LoggerPro เข้ากันได้กับ
ILogItemRenderers
(ตรวจสอบตัวอย่าง) System.Net.HttpClient
)TLoggerProFileAppender
(ขอบคุณ charoit) TThreadedList<T>
ด้วยการใช้งานแบบกำหนดเอง ( TThreadSafeQueue<T>
) เนื่องจากข้อผิดพลาดและสิ่งนี้ใน TMonitor
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+)ผู้ผนวกรายถัดไปในไปป์ไลน์การพัฒนา
ผู้เขียนบันทึกและผู้ผนวกทั้งหมดเป็นแบบอะซิงโครนัส
ตรวจสอบตัวอย่างเพื่อดูวิธีใช้อุปกรณ์ต่อท้ายแต่ละตัว หรือแม้แต่รวมอุปกรณ์ต่อท้ายที่แตกต่างกัน
เอกสารมีอยู่ในโฟลเดอร์ docs
ในรูปแบบ HTML
คุณสามารถติดตั้งตัวจัดการแพ็คเกจ Delphinus และติดตั้ง LoggerPro เป็นแพ็คเกจได้ที่นั่น (เดลฟีนัส-สนับสนุน)