o
    •Û_8  ã                   @   s6   d dl Zd dlZd dlZej ¡ ZG dd„ deƒZdS )é    Nc                   @   s"   e Zd ZdZddd„Zdd„ ZdS )ÚTunedExceptionz
	Nc                 C   s(   |d u rt }| t| ƒ¡ |  |¡ d S ©N)Úexception_loggerÚerrorÚstrÚ
_log_trace)ÚselfÚlogger© r
   ú2/usr/lib/python3/dist-packages/tuned/exceptions.pyÚlog   s   zTunedException.logc                 C   sJ   t  ¡ \}}}|| kr| d¡ d S d t |||¡¡ ¡ }| |¡ d S )Nz"stack trace is no longer availableÚ )ÚsysÚexc_infoÚdebugÚjoinÚ	tracebackÚformat_exceptionÚrstrip)r   r	   Úexc_typeÚ	exc_valueÚexc_tracebackÚexception_infor
   r
   r   r      s
   zTunedException._log_tracer   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r
   r
   r
   r   r      s    
r   )	Ú
tuned.logsÚtunedr   r   ÚlogsÚgetr   Ú	Exceptionr   r
   r
   r
   r   Ú<module>   s
    
