
    \jk
              
          d dl Z d dlZd dlmZmZ d dlZd dlmZmZ erd dl	m
Z
 g dZ G d de      Zded	ed
eddddf
dZ e j"                  edd      Z e j"                  edd      Z e j"                  edd      Z e j"                  edd      Z e j"                  edd      Z e j"                  edd      ZdedefdZdedddd fd!Zy)"    N)AnyTYPE_CHECKING)format_attributecapture_internal_exceptions)
Attributes)))      trace))      debug))	      info))      warn))      error))      fatalc                        e Zd ZdZdedefdZy)_dict_default_keyz%dict that returns the key if missing.keyreturnc                     d|z   dz   S )N{} )selfr   s     ;/root/env/lib/python3.12/site-packages/sentry_sdk/logger.py__missing__z_dict_default_key.__missing__   s    Sy3    N)__name__
__module____qualname____doc__strr$   r!   r%   r#   r   r      s    /s s r%   r   severity_textseverity_numbertemplatekwargsr   r   c           
         |}i }d|v r;|j                  d      xs i }|j                         D ]  \  }}t        |      ||<    |j                         D ]  \  }	}
t        |
      |d|	 <    |r;t        |      |d<   t               5  |j	                  t        |            }d d d        t        j                         j                  | |||t        j                         d d d       y # 1 sw Y   GxY w)N
attributeszsentry.message.parameter.zsentry.message.template)r+   r,   r0   bodytime_unix_nanotrace_idspan_id)popitemsr   r   
format_mapr   
sentry_sdkget_current_scope_capture_logtimetime_ns)r+   r,   r-   r.   r1   r0   provided_attributes	attributevaluekvs              r#   r:   r:       s    D!Jv$jj6<" 3 9 9 ; 	<Iu$4U$;Jy!	<  J16Fq6I
.qc23J 0@0J
,-(* 	B&&'8'@AD	B   "//*.$"lln	

	B 	Bs   C((C1r
   r   r   r   r   r   r   r   r   r   r   r   otel_severity_numberc                 H    t         D ]  \  \  }}}|| cxk  r	|k  s|c S   y)Ndefault)OTEL_RANGES)rB   lowerupperseveritys       r#   _otel_severity_textrI   K   s7    $/  (1E1O 2 r%   levelmappingzdict[Any, int]ztuple[int, str]c                 r    t        |j                         d      D ]  \  }}| |k\  s|t        |      fc S  y)NT)reverse)r   rD   )sortedr6   rI   )rJ   rK   py_levelrB   s       r#   _log_level_to_otelrP   S   sE    *0$*O S&&H')<=Q)RRRS r%   )	functoolsr;   typingr   r   r8   sentry_sdk.utilsr   r   sentry_sdk._typesr   rE   dictr   r*   intr:   partialr
   r   r   warningr   r   rI   rP   r!   r%   r#   <module>rY      s     %  J,	   ), 8; GL 	 F 		,3	,3yvq1
)

L&"
5	,4	,4c c c ,< AR r%   