TPDFlibLogger
データ型、ドキュメント管理
説明
TPDFlibLogger は、TPDFlib インスタンスの Logger プロパティを介して接続される構造化ロガークラスです。割り当てられると Debug、Info、Warn、Error レコードを受け取り、各レコードには既存の LastErrorCode 分類体系に由来する数値コードと人が読めるメッセージが含まれます
ロガーは呼び出し元が所有し、複数の TPDFlib インスタンス間で共有できます。既定では nil であるため、ロガーなしのパスはコストゼロです
構文
Delphi
TPDFlibLogger = Class
Public
Constructor Create; Virtual;
Destructor Destroy; Override;
Procedure Log(Level: TPDFlibLogLevel; Code: Integer; Const Msg: WideString); Overload;
Procedure Log(Level: TPDFlibLogLevel; Code: Integer; Const Msg: WideString;
Const ExtraFieldsText: WideString); Overload;
Procedure Debug(Code: Integer; Const Msg: WideString);
Procedure Info(Code: Integer; Const Msg: WideString);
Procedure Warn(Code: Integer; Const Msg: WideString);
Procedure Error_(Code: Integer; Const Msg: WideString);
Property Level: TPDFlibLogLevel Read FLevel Write FLevel;
Property OnLog: TPDFlibLogEvent Read FOnLog Write FOnLog;
Property FileName: WideString Read FFileName Write SetFileName;
End;パラメータ
| Level | 出力する最小重要度。このしきい値未満のレコードは通知なく破棄される |
|---|---|
| OnLog | 出力された各レコードで呼び出され、レベル、コードおよびメッセージを受け取るホストコールバック |
| FileName | 設定すると、スレッドセーフな TStreamWriter シンクを介してレコードをこのファイルにも書き込みます。ファイル記録を停止するには消去します |
備考
便利なメソッド Debug、Info、Warn、Error_ は対応するレベルで Log を呼び出します
ファイル書き込みはクリティカルセクションで直列化されるため、1 つのロガーインスタンスをワーカースレッドから安全に使用できます
PDFlibErrorMessage(Code) は数値コードを人が読めるメッセージに変換し、ロガーとは独立して呼び出せます