
    @OOf                        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 dl
mZ  G d d      Z G d	 d
e	j                        Zy)    )annotationsN)IO)ctx)log)vt_codesc                  :    e Zd ZU dZded<   dd	dZd Zd Zd
dZy)TermLogNzasyncio.Task | None_teardown_taskc                X    t        |      | _        | j                  j                          y N)TermLogHandlerloggerinstall)selfouts     Y/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/addons/termlog.py__init__zTermLog.__init__   s    $S)    c                    |j                  dt        ddt        j                         | j                  j                  t        j                         y )Ntermlog_verbosityinfozLog verbosity.)choices)
add_optionstrr   	LogLevelsr   setLevelloggingINFO)r   loaders     r   loadzTermLog.load   s=    f.> 	 	
 	W\\*r   c                    d|v rB| j                   j                  t        j                  j                  j                                y y )Nr   )r   r   r   optionsr   upper)r   updateds     r   	configurezTermLog.configure   s4    ')KK  !>!>!D!D!FG *r   c                8    | j                   j                          y r   )r   	uninstall)r   s    r   r'   zTermLog.uninstall   s     	r   r   r   zIO[str] | None)returnNone)	__name__
__module____qualname__r
   __annotations__r   r    r%   r'    r   r   r	   r	      s"    *.N'.+H r   r	   c                  *     e Zd Zdd fdZddZ xZS )r   c                    t         |           |xs t        j                  | _        t        j                  | j                        | _        t        j                  | j                        | _
        y r   )superr   sysstdoutfiler   ensure_supportedhas_vt_codesr   MitmFormatter	formatter)r   r   	__class__s     r   r   zTermLogHandler.__init__&   sM     .CJJ	$55dii@**4+<+<=r   c                    	 t        | j                  |      | j                         y # t        $ r t	        j
                  d       Y y w xY w)N)r5      )printformatr5   OSErrorr3   exit)r   records     r   emitzTermLogHandler.emit,   s:    	$++f%DII6 	 HHQK	s   &) A
	A
r   r(   )rA   zlogging.LogRecordr)   r*   )r+   r,   r-   r   rB   __classcell__)r:   s   @r   r   r   %   s    >r   r   )
__future__r   asyncior   r3   typingr   	mitmproxyr   r   mitmproxy.utilsr   r	   MitmLogHandlerr   r/   r   r   <module>rJ      s9    "   
    $   0S'' r   