%PDF- %PDF-
| Direktori : /lib64/python2.7/site-packages/zmq/log/ |
| Current File : //lib64/python2.7/site-packages/zmq/log/handlers.pyo |
�
+�{Wc @ s� d Z d d l Z d d l m Z m Z m Z m Z m Z d d l Z d d l m Z m
Z
m Z d Z d e j
f d � � YZ d e j f d � � YZ x9 d
j � D]+ Z e e j e � Z e e e d � � q� Wd S( sn pyzmq logging handlers.
This mainly defines the PUBHandler object for publishing logging messages over
a zmq.PUB socket.
The PUBHandler can be used with the regular logging module, as in::
>>> import logging
>>> handler = PUBHandler('tcp://127.0.0.1:12345')
>>> handler.root_topic = 'foo'
>>> logger = logging.getLogger('foobar')
>>> logger.setLevel(logging.DEBUG)
>>> logger.addHandler(handler)
After this point, all messages logged by ``logger`` will be published on the
PUB socket.
Code adapted from StarCluster:
http://github.com/jtriley/StarCluster/blob/master/starcluster/logger.py
i����N( t INFOt DEBUGt WARNt ERRORt FATAL( t bytest unicodet
cast_bytess ::t
PUBHandlerc B s� e Z d Z d Z d Z i e j d � e j 6e j d � e j 6e j d � e j
6e j d � e j 6e j d � e j 6Z
d d � Z d � Z d � Z RS( s| A basic logging handler that emits log messages through a PUB socket.
Takes a PUB socket already bound to interfaces or an interface to bind to.
Example::
sock = context.socket(zmq.PUB)
sock.bind('inproc://log')
handler = PUBHandler(sock)
Or::
handler = PUBHandler('inproc://loc')
These are equivalent.
Log messages handled by this handler are broadcast with ZMQ topics
``this.root_topic`` comes first, followed by the log level
(DEBUG,INFO,etc.), followed by any additional subtopics specified in the
message by: log.debug("subtopic.subsub::the real message")
t s4 %(levelname)s %(filename)s:%(lineno)d - %(message)s
s %(message)s
sC %(levelname)s %(filename)s:%(lineno)d - %(message)s - %(exc_info)s
c C s~ t j j | � t | t j � r= | | _ | j j | _ n= | pL t j � | _ | j j t j
� | _ | j j | � d S( N( t loggingt Handlert __init__t
isinstancet zmqt Sockett sockett contextt ctxt Contextt PUBt bind( t selft interface_or_socketR ( ( s6 /usr/lib64/python2.7/site-packages/zmq/log/handlers.pyR I s c C s | j | j j | � S( s Format a record.( t
formatterst levelnot format( R t record( ( s6 /usr/lib64/python2.7/site-packages/zmq/log/handlers.pyR S s c C s� y"