File: //opt/alt/python27/lib/python2.7/site-packages/raven/handlers/logbook.pyo
�
��Yc           @@ s�   d  Z  d d l m Z d d l m Z d d l Z d d l Z d d l Z d d l m Z d d l	 m
 Z
 d d l m Z d e j
 f d	 �  �  YZ d S(
   s�   
raven.handlers.logbook
~~~~~~~~~~~~~~~~~~~~~~
:copyright: (c) 2010-2012 by the Sentry Team, see AUTHORS for more details.
:license: BSD, see LICENSE for more details.
i    (   t   absolute_import(   t   print_functionN(   t   string_types(   t   Client(   t	   to_stringt
   SentryHandlerc           B@ s#   e  Z d  �  Z d �  Z d �  Z RS(   c         O@ s�   t  | � d k r� | d } t | t � rO | j d t � d | | � |  _ n7 t | t � rj | |  _ n t d |  j j | f � � g  } n6 y | j d � |  _ Wn t	 k
 r� t
 d � � n Xt t |  � j
 | | �  d  S(   Ni   i    t
   client_clst   dsnsS   The first argument to %s must be either a Client instance or a DSN, got %r instead.t   clients3   Expected keyword argument for SentryHandler: client(   t   lent
   isinstanceR   t   popR   R   t
   ValueErrort	   __class__t   __name__t   KeyErrort	   TypeErrort   superR   t   __init__(   t   selft   argst   kwargst   arg(    (    sG   /opt/alt/python27/lib/python2.7/site-packages/raven/handlers/logbook.pyR      s    
$	
	
c         C@ s�   yI | j  j d � r; t t |  j | � � d t j �d  S|  j | � SWn� t k
 r� |  j	 j
 rk �  n  t d d t j �t t | j � d t j �t t t j
 �  � � y |  j	 j �  Wq� t k
 r� q� Xn Xd  S(   Ns
   sentry.errorst   ravent   files>