
    @OOf5                     ~    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	  G d d      Z
 G d dej                        Zy)	    N)log)click)vt_codesc                   <    e Zd ZU dZeed<   	 ddeddfdZd Zd Zy)	
ErrorCheckzSMonitor startup for error log entries, and terminate immediately if there are some.repeat_errors_on_stderrreturnNc                 d    || _         t               | _        | j                  j                          y N)r   ErrorCheckHandlerloggerinstall)selfr   s     \/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/addons/errorcheck.py__init__zErrorCheck.__init__   s$    '>$')    c                 8    | j                   j                          y r   )r   	uninstall)r   s    r   finishzErrorCheck.finish   s    r   c                 f   K   t        j                  d       d {     j                  j                  rt	         j                  j                        dkD  rdnd} j
                  rd| d}t        j                  t        j                        rt        j                  |d      }d	j                   fd
 j                  j                  D              }t        | d	| t        j                         nt        d| dt        j                         t        j                  d       y y 7 w)Nr      s Errorz logged during startup:red)fg
c              3   T   K   | ]  }j                   j                  |       ! y wr   )r   format).0rr   s     r   	<genexpr>z1ErrorCheck.shutdown_if_errored.<locals>.<genexpr>%   s%      $./DKK&&q)$s   %()filez" logged during startup, exiting...)asynciosleepr   has_erroredlenr   r   ensure_supportedsysstderr	miniclickstylejoinprintexit)r   pluralmessagedetailss   `   r   shutdown_if_erroredzErrorCheck.shutdown_if_errored   s     mmA;;"" 7 781<S"F++!&)@A,,SZZ8'oog%@G)) $37;;3J3J$  	G9-CJJ?F8#EFSZZ HHQK # 	s   D1D.DD1)F)	__name__
__module____qualname____doc__bool__annotations__r   r   r3    r   r   r   r   
   s-    ]!!
   r   r   c                   D     e Zd Zd fdZdej
                  ddfdZ xZS )r   r	   Nc                 N    t         |   t        j                         g | _        y r   )superr   loggingERRORr&   )r   	__class__s    r   r   zErrorCheckHandler.__init__2   s    '46r   recordc                 :    | j                   j                  |       y r   )r&   append)r   rA   s     r   emitzErrorCheckHandler.emit6   s    'r   )r	   N)r4   r5   r6   r   r>   	LogRecordrD   __classcell__)r@   s   @r   r   r   1   s!    7(7,, ( (r   r   )r$   r>   r)   	mitmproxyr   mitmproxy.contribr   r+   mitmproxy.utilsr   r   MitmLogHandlerr   r:   r   r   <module>rK      s4      
  0 $$ $N(** (r   