loggerpro
1.4.1
Delphi를 위한 현대적이고 플러그 가능한 로깅 프레임워크
LoggerPro는 다음과 호환됩니다.
ILogItemRenderers
추가했습니다(샘플 확인). System.Net.HttpClient
사용하는 어펜더가 포함되어 있지 않습니다).TLoggerProFileAppender
에 Linux에 대한 지원이 추가되었습니다(charoit에게 감사드립니다). TThreadedList<T>
사용자 정의 구현( TThreadSafeQueue<T>
)으로 대체하고 이 문제는 TMonitor
에 있습니다.TThreadSafeQueue<T>
는 TThreadedQueue<T>
를 즉시 대체할 수는 없지만 동일한 버그로 고생하는 경우 다른 프로젝트에서 사용할 수 있습니다.TVCLMemoLogAppender.Create
에는 시작 시 메모를 선택적으로 지우는 새로운 매개변수인 aClearOnStartup
이 있습니다.TLoggerProConsoleAppender
개선(Fulgan에게 감사드립니다)TLoggerProFileAppender
개선 ; 이제 로그 행 형식을 사용자 정의하는 데 사용할 수 있는 OnLogRow
콜백이 있습니다.Log
메소드. *Fmt
버전은 더 이상 사용되지 않으며 향후 버전 문제 #17에서 제거될 예정입니다.RESTLogCollector
도 제공됩니다. 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+) 덕분입니다.개발 파이프라인의 다음 Appender
로그 기록기와 모든 추가자는 비동기적입니다.
각 어펜더를 사용하는 방법이나 다른 어펜더를 결합하는 방법을 보려면 샘플을 확인하세요.
문서는 docs
폴더에 HTML로 제공됩니다.
Delphinus 패키지 관리자를 설치하고 거기에 LoggerPro를 패키지로 설치할 수 있습니다. (델피누스 지원)