o
    Ne0
  ã                   @   sb   d dl mZ d dl mZ d dl mZ d dlZd dlZd dlZd dlmZ g Z	ddej
fdd„ZdS )	é    )Úabsolute_import)Údivision)Úprint_functionN)ÚParallelEnvZhapic           	      C   s  t  |¡}d|_| |¡ d}tƒ j}|dkr7t|jƒdkr7t jt	j
d}| |¡ | t  |¡¡ | |¡ | dur„|  d¡sE|  d¡rH| }ntj | d¡}|dkrZ|d	 |¡ }tj tj |¡¡smt tj |¡¡ t  |¡}| |¡ | t  |¡¡ | |¡ |S )
a
  
    Initialize logger of hapi and set its verbosity level to "INFO".

    Args:
        output (str): a file name or a directory to save log. If None, will not save log file.
            If ends with ".txt" or ".log", assumed to be a file name.
            Otherwise, logs will be saved to `output/log.txt`.
        name (str): the root module name of this logger. Default: 'hapi'.
        log_level (enum): log level. eg.'INFO', 'DEBUG', 'ERROR'. Default: logging.INFO.
    Returns:
        logging.Logger: a logger
    Fz4%(asctime)s - %(name)s - %(levelname)s - %(message)sr   )ÚstreamNz.txtz.logzlog.txtz.rank{})ÚloggingÚ	getLoggerÚ	propagateÚsetLevelr   Ú
local_rankÚlenÚhandlersÚStreamHandlerÚsysÚstdoutÚsetFormatterÚ	FormatterÚ
addHandlerÚendswithÚosÚpathÚjoinÚformatÚexistsÚdirnameÚmakedirs)	ÚoutputÚnameÚ	log_levelÚloggerÚ
format_strr   ÚchÚfilenameÚfh© r$   úBD:\Projects\ConvertPro\env\Lib\site-packages\paddle/hapi/logger.pyÚsetup_logger   s.   






r&   )Ú
__future__r   r   r   r   r   r   Zpaddle.fluid.dygraph.parallelr   Ú__all__ÚINFOr&   r$   r$   r$   r%   Ú<module>   s   