B
    CW                 @   sv   d dl mZmZmZ d dlZd dlZd dlmZmZ ej	dej
dejdiZG dd dejZd	d
 Zedkrre  dS )    )absolute_importprint_functionunicode_literalsN)colorserrorsZredZyelloZbluec               @   s*   e Zd ZejdejffddZdd ZdS )ColorStreamHandlerZttyc             C   s    || _ || _tjj| |d d S )N)level)show_tb
exceptionsloggingHandler__init__)selfr   r	   r
    r   3lib/python3.7/site-packages/clyent/logs/handlers.pyr      s    zColorStreamHandler.__init__c       	   	   C   s,  |  |sd S | |}|jtjkr,tj}ntj}tj	t
|j|d}|jo^t|jd | j}| jdkrndn| jdkr|dn| }|r|r|jd }t|}| tdt|j |dd	 W d Q R X t||d nL|jd
kr|jnd}| r| td| |dd	 W d Q R X t||d |  d S )N)file   neverTalwaysFz[%s]  )r   endINFO)filterformatZlevelnor   r   sysstdoutstderrr   ZColor	COLOR_MAPgetexc_info
isinstancer
   r	   isattystrprinttype__name__Z	levelnamestripflush)	r   recordmsgstreamZcolorZ
is_hidableZshould_hideerrheaderr   r   r   emit   s*    

$
"
zColorStreamHandler.emitN)	r%   
__module____qualname__r   r   r   ClyentErrorr   r-   r   r   r   r   r      s   r   c              C   s   t   t } | tj ttjdd}| | | d | 	d | 
d | d yt W n   | d Y nX ytdW n   | d	 Y nX d S )
NF)r	   DEBUGr   WARNERRORzShow this tbzThis will be a short messagezThis wil not be displayed)r   Zinitialize_colorsr   Z	getLoggerZsetLevelr1   r   Z
addHandlerdebuginfowarnerrorZasdfZ	exceptionr   r0   )Zloggerhr   r   r   main;   s"    




r9   __main__)Z
__future__r   r   r   r   r   Zclyentr   r   r3   r2   r1   r   r   r   r9   r%   r   r   r   r   <module>   s   
.