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Минимальная серьёзность для выдачи; записи ниже порога молча отбрасываются
OnLogCallback-функция хоста, вызываемая для каждой выданной записи и получающая уровень, код и сообщение
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) переводит числовой код в человекочитаемое сообщение и может вызываться независимо от логгера

См. также

Logger, OnOperationProgress, LastErrorCode