ScribeHandler is een eenvoudige proxy laag die werkt met de python standaard logging module. Het fungeert aa handler object dat wordt toegevoegd aan een logger op de standaard manier.
Belangrijke stukjes:
Wanneer instantiëren de handler, zal u wilt de verbinding instelling u lezen op te geven. De volgende trefwoord argumenten worden reconized (en standaardinstellingen):
Argument & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Verzuim
---------------------------
hosten & 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
categorie & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; % (Hostname) 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; Geen
- Host en de haven, zou duidelijk moeten zijn
- Indien het vervoer wordt ScribeHandler.FRAMED, dan
& Nbsp; & nbsp; & nbsp; thrift.transport.TTransport.TFramedTransport () wordt gebruikt.
- Indien het vervoer wordt ScribeHandler.BUFFERED, dan
& Nbsp; & nbsp; & nbsp; thrift.transport.TTransport.TBufferedTransport () wordt gebruikt.
- Indien het vervoer is ScribeHandler.HTTP dan
& Nbsp; & nbsp; & nbsp; thrift.transport.THttpClient.THttpClient () wordt gebruikt en uri mag niet worden
& Nbsp; & nbsp; & nbsp; Geen
- Indien het vervoer is niet dan kunt u de aanvaardbare Thrift / Scribe toewijzen
& Nbsp; & nbsp; & nbsp; vervoer via
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ScirbeHandler.transport =
waarbij
- Categorie wordt vertaald in de parameter categorie scribe.LogEntry () object & nbsp;. Het moet een standaard format string met mapping toetsen zijn. De volgende zijn de reconized mapping toetsen:
& Nbsp; & nbsp; & nbsp; Key Name & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; Bron
& Nbsp; & nbsp; & nbsp; ----------------------
& Nbsp; & nbsp; & nbsp; module & 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; hostname & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; socket.gethostname ()
Hier is een eenvoudig voorbeeld van hoe het te gebruiken:
import logging
import ScribeHandler
mylogger = logging.getLogger (ScribeLogger)
mylogger.setLevel (logging.DEBUG)
handler = ScribeHandler.ScribeHandler (categorie = '% (hostname) s -% (levelName) s', file_buffer = '/ tmp / logbuffer')
mylogger.addHandler (handler)
mylogger.debug ('dingen gebeuren')
Eisen
- Python
Reacties niet gevonden