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 | Callback-функция хоста, вызываемая для каждой выданной записи и получающая уровень, код и сообщение |
| FileName | Когда задано, записи также пишутся в этот файл через потокобезопасный приемник TStreamWriter; очистите его, чтобы прекратить журналирование в файл |
Примечания
The convenience methods Debug, Info, Warn and Error_ call Log with the matching levelFile writes are serialized with a critical section, so a single logger instance is safe to use from worker threads
Записи в файл сериализуются критической секцией, поэтому один экземпляр журнала безопасно использовать из рабочих потоков
PDFlibErrorMessage(Code) переводит числовой код в человекочитаемое сообщение и может вызываться независимо от логгера