TPDFlibLogger
Typy danych, Zarządzanie dokumentem
Opis
TPDFlibLogger jest klasą ustrukturyzowanego dziennika dołączaną do instancji TPDFlib przez jej właściwość Logger. Po przypisaniu otrzymuje rekordy Debug, Info, Warn i Error, z których każdy zawiera kod liczbowy z istniejącej taksonomii LastErrorCode oraz czytelny komunikat
Dziennik należy do kodu wywołującego i może być współdzielony przez kilka instancji TPDFlib. Domyślnie ma wartość nil, dlatego ścieżka bez dziennika nie ponosi kosztu
Składnia
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;Parametry
| Level | Minimalna ważność do emitowania; rekordy poniżej progu są po cichu odrzucane |
|---|---|
| OnLog | Funkcja wywołania zwrotnego hosta wywoływana dla każdego wyemitowanego rekordu, otrzymująca poziom, kod i komunikat |
| FileName | Po ustawieniu rekordy są również zapisywane do tego pliku przez bezpieczne wątkowo ujście TStreamWriter; wyczyść wartość, aby zatrzymać rejestrowanie do pliku |
Uwagi
Metody pomocnicze Debug, Info, Warn i Error_ wywołują Log z odpowiadającym poziomem
Zapisy do pliku są serializowane sekcją krytyczną, dlatego jednej instancji dziennika można bezpiecznie używać z wątków roboczych
PDFlibErrorMessage(Code) tłumaczy kod liczbowy na czytelny komunikat i może być wywoływana niezależnie od dziennika