
    g                         d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z
 d dlmZ d dlmZmZmZ d d	lmZmZmZ d d
lmZ  e j.                  e      Z G d de
      Z	 G d de      Zy)    N)time_ns)Optional)trace)Event)EventLogger)EventLoggerProvider)
NoOpLoggerSeverityNumberget_logger_provider)LoggerLoggerProvider	LogRecord)
Attributesc                   ^     e Zd Z	 	 	 ddededee   dee   dee   f
 fdZded	dfd
Z	 xZ
S )r   Nlogger_providernameversion
schema_url
attributesc                 ^    t         |   ||||       |j                  ||||      | _        y )N)r   r   r   r   )super__init__
get_logger_logger)selfr   r   r   r   r   	__class__s         W/var/www/openai/venv/lib/python3.12/site-packages/opentelemetry/sdk/_events/__init__.pyr   zEventLogger.__init__   s@     	!!	 	 	
  /99':z 
    eventreturnc                 $   t        | j                  t              ry t        j                         j                         }t        |j                  xs
 t               d |j                  xs |j                  |j                  xs |j                  |j                  xs |j                  d |j                  xs t        j                  |j                  t!        | j                  dd       |j"                  
      }| j                  j%                  |       y )Nresource)
	timestampobserved_timestamptrace_idspan_idtrace_flagsseverity_textseverity_numberbodyr"   r   )
isinstancer   r	   r   get_current_spanget_span_contextr   r#   r   r%   r&   r'   r)   r
   INFOr*   getattrr   emit)r   r   span_context
log_records       r   r0   zEventLogger.emit0   s    dllJ/--/@@Boo2#^^<|'<'<MM9\%9%9))E\-E-E!11H^5H5HT\\:t<''

 	*%r   NNN)__name__
__module____qualname__r   strr   r   r   r   r0   __classcell__)r   s   @r   r   r      sc    
 "&$(+/
'
 
 #	

 SM
 Z(
$&% &D &r   r   c                   n    e Zd Zddee   fdZ	 	 	 ddedee   dee   dee   def
d	Z	d
 Z
ddedefdZy)r   Nr   c                 *    |xs
 t               | _        y N)r   _logger_provider)r   r   s     r   r   zEventLoggerProvider.__init__E   s     / H3F3Hr   r   r   r   r   r    c                 d    |st         j                  d|       t        | j                  ||||      S )Nz)EventLogger created with invalid name: %s)r   warningr   r<   )r   r   r   r   r   s        r   get_event_loggerz$EventLoggerProvider.get_event_loggerH   s4     OOGN!!4*j
 	
r   c                 8    | j                   j                          y r;   )r<   shutdown)r   s    r   rA   zEventLoggerProvider.shutdownU   s    &&(r   timeout_millisc                 :    | j                   j                  |       y r;   )r<   force_flush)r   rB   s     r   rD   zEventLoggerProvider.force_flushX   s    )).9r   r;   r3   )i0u  )r4   r5   r6   r   r   r   r7   r   r   r?   rA   intboolrD    r   r   r   r   D   sz    I(@ I "&$(+/

 #
 SM	

 Z(
 

):# :$ :r   r   )loggingtimer   typingr   opentelemetryr   opentelemetry._eventsr   r   APIEventLoggerr   APIEventLoggerProvideropentelemetry._logsr	   r
   r   opentelemetry.sdk._logsr   r   r   opentelemetry.util.typesr   	getLoggerr4   r   rG   r   r   <module>rS      sW        ' ? O O O E E /
'

H
%$&. $&N:0 :r   