ScribeHandler jest prosta warstwa proxy, który współpracuje z modułem logowania standardowej Pythona. Działa aa obiektu procedury obsługi, która zostanie dodana do rejestratora w standardowy sposób.
Ważne bitów:
Przy uruchamianiu programu obsługi, będziemy chcieli, aby określić ustawienia do ślane połączenia. Poniższe argumenty kluczowe są reconized (i domyślnie):
Argument & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Domyślnie
---------------------------
gospodarzem & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 127.0.0.1
Port & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 1463
kategoria & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; % (Nazwa hosta) s -% (loggername) s
Transport & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ScribeHandler.FRAMED
uri & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Żaden
- Host i port, powinno być oczywiste,
- Jeśli transport ScribeHandler.FRAMED, a następnie
& Nbsp; & nbsp; & nbsp; thrift.transport.TTransport.TFramedTransport () jest używana.
- Jeśli transport ScribeHandler.BUFFERED, a następnie
& Nbsp; & nbsp; & nbsp; thrift.transport.TTransport.TBufferedTransport () jest używana.
- Jeśli jest ScribeHandler.HTTP następnie transportu
& Nbsp; & nbsp; & nbsp; thrift.transport.THttpClient.THttpClient () jest używany i uri NIE MUSI być
& Nbsp; & nbsp; & nbsp; Żaden
- W przypadku transportu jest brak to można przypisać dowolną dopuszczalną Thrift / Scribe
& Nbsp; & nbsp; & nbsp; TRANSPORT
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ScirbeHandler.transport =
gdzie
- Kategoria jest tłumaczone na parametr kategorii do scribe.LogEntry () obiektu. & Nbsp; To powinno być standardem ciąg formatu przy użyciu klawiszy mapowania. Poniżej znajdują się klawisze mapowania reconized:
& Nbsp; & nbsp; & nbsp; Nazwa przycisku & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Źródło
& Nbsp; & nbsp; & nbsp; ----------------------
& Nbsp; & nbsp; & nbsp; Moduł & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; logging.LogRecord.module
& Nbsp; & nbsp; & nbsp; levelName & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; logging.LogRecord.levelname
& Nbsp; & nbsp; & nbsp; loggername & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; logging.LogRecord.name
& Nbsp; & nbsp; & nbsp; ProcessName & nbsp; & nbsp; & nbsp; & nbsp; logging.LogRecord.processName
& Nbsp; & nbsp; & nbsp; Nazwa hosta & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; socket.gethostname ()
Oto prosty przykład, jak z niego korzystać:
rejestrowanie przywozu
import ScribeHandler
mylogger = logging.getLogger ("ScribeLogger")
mylogger.setLevel (logging.DEBUG)
Wózek = ScribeHandler.ScribeHandler (kategoria = '% (nazwa hosta) s -% (levelName) s', file_buffer = "/ tmp / logbuffer")
mylogger.addHandler (obsługi)
mylogger.debug ("rzeczy się zdarzają")
Wymagania :
- Python
Komentarze nie znaleziono