Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
DelphiRAD Studio

エンタープライズ向けの非同期ログ出力ライブラリ「Quick Logger」

enterprise grade asynchronous logger for delphi ja

「Quick Logger」はファイル、コンソール、メモリ、電子メール、REST、イベントログ、Syslog、slack、telegram(テレグラム)、Redis、logstash、elasticsearch、influxdb、graylog、Sentry、Twilio、IDEのデバッグメッセージなど多種多様のイベントスローに対応したFireMonkey向けのライブラリで、Windows/Linux/macOS/iOS/Androidなどの様々なプラットホームに対応しています。

このライブラリは非同期で動作し、すべてのログはキューに送信され、アプリケーションフローを損なうことはありません。すべてのログエントリを送信する多くのプロバイダーを定義し、すべてのユーザーを受け入れるレベルを決定することができます。

QuickLoggerは、ロガーとプロバイダを自動的に管理します。ロガーとプロバイダはグローバルクラスを持っており、アプリケーションを終了するとログが自動生成されます。QuickLoggerを利用するために必要な操作は、Delphiソースコードのuse句に使用したいプロバイダを追加するだけです。

以下は、QuickLoggerを利用したコンソールベースのサンプルコードの例です。

program
{$APPTYPE CONSOLE}
uses
    Quick.Logger:
    Quick.Logger.Provider.Files;
    Quick.Logger.Provider.Console;
begin
    //Add Log File and console providers
    Logger.Providers.Add(GlobalLogFileProvider);
    Logger.Providers.Add(GlobalLogConsoleProvider);
    //Configure provider options
    with GlobalLogFileProvider do
 	begin
    	FileName := '.Logger.log';
        DailyRotate := True;
        MaxFileSizeInMB := 20;
        LogLevel := LOG_ALL;
    	Enabled := True;
  	end;
    with GlobalLogConsoleProvider do
    begin
    	LogLevel := LOG_DEBUG;
        ShowEventColors := True;
        Enabled := True;
    end;
    Log('Test entry',etInfo);
    Log('Test number: %d',[1],etWarning);
end.


ログで定義できるイベントタイプには、

  • etHeader
  • etInfo
  • etSuccess
  • etWarning
  • etError
  • etCritical
  • etException
  • etDebug
  • etTrace
  • etCustom1
  • etCustom2

などがあります。

すべてのロガープロバイダーは、これらのイベントタイプの1つ以上をリッスンし、パフォーマンスの問題やスパムを回避するために、1日、1時間、1分、または1秒あたりのイベントタイプの範囲で受信するイベントタイプの数を制限するように設定できます。

QuickLoggerライブラリは、無償で利用可能なオープンソースですが、Apacheライセンスが規定されています。QuickLoggerの全てのライブラリとサンプルコードは、GitHub経由でこちらから入手できます。なお、エンバカデロではこのライブラリに関するテクニカルサポートサービスは提供しておりません。

RAD Studio 13.1 Florence Now Available See What's New in RAD Studio 13.1 Delphi is 31 - Webinar Replay

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.

Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES