o
    Á¿iß  ã                   @   s.   d dl Z d dlZd dlZG dd„ de jƒZdS )é    Nc                       s8   e Zd Ze ¡ Z‡ fdd„Zdejddfdd„Z	‡  Z
S )ÚDDTelemetryErrorHandlerc                    s   || _ tƒ  ¡  d S )N)Útelemetry_writerÚsuperÚ__init__)Úselfr   ©Ú	__class__© úV/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/internal/telemetry/logging.pyr   	   s   z DDTelemetryErrorHandler.__init__ÚrecordÚreturnNc                 C   sH   |j tjkr t|ddƒdv r"t dd|j¡}| j ||j	¡ dS dS dS )zeThis function will:
        - Log all records with a level of ERROR or higher with telemetry
        Úsend_to_telemetryN)NTz\s*\[\d+ skipped\]$Ú )
ÚlevelnoÚloggingÚERRORÚgetattrÚreÚsubÚmsgr   Úadd_error_logÚexc_info)r   r   r   r	   r	   r
   Úemit   s   üzDDTelemetryErrorHandler.emit)Ú__name__Ú
__module__Ú__qualname__ÚosÚgetcwdÚCWDr   r   Ú	LogRecordr   Ú__classcell__r	   r	   r   r
   r      s    r   )r   r   r   ÚHandlerr   r	   r	   r	   r
   Ú<module>   s    