Metadata-Version: 1.0
Name: ScribeHandler
Version: 0.02
Summary: UNKNOWN
Home-page: http://github.com/jmj/ScribeHandler
Author: Jeremy Jones
Author-email: jeremyj@letifer.org
License: GPLv2
Description: ScribeHandler is a simple proxy layer that works with the python standard
        logging module (http://docs.python.org/library/logging.html).  ScribeHandler
        acts a a handler object that gets added to a logger in the standard way.
        
        Important bits:
        
        When instantiating the handler, you will want to specify the connection
        setting to scribed.  The following keyword arguments are reconized (and
        defaults):
        
        Argument            Default
        ---------------------------
        host                172.0.0.1
        port                1463
        category            %(hostname)s-%(loggername)s
        transport           ScribeHandler.FRAMED
        uri                 None
        
        - Host and port, should be obvious
        
        - If transport is ScribeHandler.FRAMED, then
            thrift.transport.TTransport.TFramedTransport() is used.
        - If transport is ScribeHandler.BUFFERED, then
            thrift.transport.TTransport.TBufferedTransport() is used.
        - If transport is ScribeHandler.HTTP then
            thrift.transport.THttpClient.THttpClient() is used and uri MUST NOT be
            None
        - If transport is None then you can assign any acceptable Thrift/Scribe
            transport via 
        
                ScirbeHandler.transport = <transport>
        
            where <transport> is a valid Scibe/Thrift transport (this is an attempt at
            future proofing).
        
        - category is translated into the category parameter to scribe.LogEntry()
            object.  It should be a standard format string using mapping keys.
            The following are the reconized mapping keys:
        
            Key Name        Source
            ----------------------
            module          logging.LogRecord.module
            levelname       logging.LogRecord.levelname
            loggername      logging.LogRecord.name
            processname     logging.LogRecord.processName
            hostname        socket.gethostname()
        
        
        Here's a simple example of how to use it:
        
        import logging
        import ScribeHandler
        mylogger = logging.getLogger('ScribeLogger')
        mylogger.setLevel(logging.DEBUG)
        handler = ScribeHandler.ScribeHandler(category='%(hostname)s-%(levelname)s')
        mylogger.addHandler(handler)
        
        mylogger.debug('stuff happens')
        
        
Platform: UNKNOWN
