
    gI              
          S SK r S SKrS SKJrJrJrJrJrJr  S SKJ	r	  \R                  \\R                  \\R                  \\R                  \\R                  \0r " S S\R                   5      rS\ R$                  SSSSS4S	 jrg)
    N)GREYYELLOWGREENREDDARK_REDC_NORMAL)is_colour_wantedc                   ,   ^  \ rS rSrSrU 4S jrSrU =r$ )ColoredFormatter!   z#Add color to log according to levelc                    > [         TU ]  U5      n[        R                  UR                  [
        5      nX2-   [        -   $ )N)superformatLEVEL_COLORSgetlevelnor   r   )selfrecordlogcolor	__class__s       ./usr/lib/python3/dist-packages/samba/logger.pyr   ColoredFormatter.format$   s4    gnV$  6{X%%     )__name__
__module____qualname____firstlineno____doc__r   __static_attributes____classcell__)r   s   @r   r   r   !   s    -& &r   r   sambaFzO%(levelname)s %(asctime)s pid:%(process)d %(pathname)s #%(lineno)d: %(message)sc                    [         R                  " U 5      nU(       dP  U=(       a    [         R                  =(       d0    U=(       a    [         R                  =(       d    [         R                  nUR                  U5        [        U5      (       a  [        nO[         R                  nU" XVS9n	[         R                  " US9n
U
R                  U	5        UR                  U
5        U$ )z&
Get a logger instance and config it.
)fmtdatefmt)stream)logging	getLoggerDEBUGWARNINGINFOsetLevelr	   r   	FormatterStreamHandlersetFormatter
addHandler)namer'   levelverbosequietr%   r&   loggerr.   	formatterhandlers              r   get_samba_loggerr9   *   s     t$F+gmm =+GOO=07 	 OOE$	%%	c3I##62G#
gMr   )sysr(   samba.colourr   r   r   r   r   r   r	   CRITICALERRORr+   r,   r*   r   r.   r   stderrr9   r   r   r   <module>r?      s   &   E E ) hMM3OOVLL%MM4&w(( & SZZE5r   