o
    hI                     @   s   U d dl Z d dlZd dlZd dlmZmZ d dlmZ d dlm	Z
 g Zee ed< dejfddZdd	edeejef fd
dZe add Zdd ZdS )    N)ListTuple)_log_handlers__all__returnc                  C   sN   t  \} }td| }|tj td}| | d|_||  |S )Nzc10d-za%(asctime)s %(filename)s:%(lineno)s %(levelname)s p:%(processName)s t:%(threadName)s: %(message)sF)	_get_logging_handlerlogging	getLoggersetLevelDEBUG	FormattersetFormatter	propagate
addHandler)logging_handlerlog_handler_namelogger	formatter r   S/var/www/html/ai/venv/lib/python3.10/site-packages/torch/distributed/c10d_logger.py_get_or_create_logger   s   


r   defaultdestinationc                 C   s   t |  }t|j}||fS )N)r   type__name__)r   log_handlerr   r   r   r   r   !   s   
r   c                       t   fdd}|S )Nc                     s   z | i |W S  t yW } zCt r? j |  d| t|d t|d t  t|d | d}n j |  d| | d}t	|  d }~ww )N, group)	func_nameargsbackend
world_sizeglobal_rank
local_rankerror)r   r    r%   )
	Exceptiondistis_initializedr   get_backendgetget_world_sizeget_rank_c10d_loggerdebug)r    kwargsr%   error_msg_dictfuncr   r   wrapper,   s(   
z"_exception_logger.<locals>.wrapper	functoolswrapsr2   r3   r   r1   r   _exception_logger+   s   r8   c                    r   )Nc               
      s   t  } | i |}t  }t rB j |  d| t|d t|d t  t|d ||  dd}n j |  d| ||  d}t	
| |S )Nr   r   ns)r   r    r!   r"   r#   r$   
time_spent)r   r    r:   )timetime_nsr'   r(   r   r)   r*   r+   r,   r-   r.   )r    r/   t1func_returnt2msg_dictr1   r   r   r3   G   s$   
z_time_logger.<locals>.wrapperr4   r7   r   r1   r   _time_loggerF   s   rA   )r   )r5   r   r;   typingr   r   "torch.distributed.logging_handlersr   torch.distributeddistributedr'   r   str__annotations__Loggerr   Handlerr   r-   r8   rA   r   r   r   r   <module>   s   
