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
文件写入通过临界区串行化,因此单个日志记录器实例可安全地供工作线程使用
PDFlibErrorMessage(Code) 将数字代码转换为人类可读消息,并且可独立于记录器调用