o
    ai                     @   sh   d dl mZ d dlmZ d dlmZ d dlmZmZ er(d dl m	Z	 d dl
mZ G dd ded	 Zd
S )    )TYPE_CHECKING)Batcherserialize_attribute)Item
PayloadRef)Any)Logc                   @   s8   e Zd ZdZdZdZdZdZedd
dZ	dddZ
dS )
LogBatcherd   i  g      @logz%application/vnd.sentry.items.log+jsonitemr	   returnr   c                 C   s   d| d vr| d | d d< d| d vr| d | d d< t | d d | dd	| d
t| d t| d dd | d  D d}|S )Nzsentry.severity_number
attributesseverity_numberzsentry.severity_textseverity_texttime_unix_nanog    eAtrace_idz$00000000-0000-0000-0000-000000000000span_idbodyc                 S   s   i | ]	\}}|t |qS  r   ).0kvr   r   U/home/ubuntu/SoloSpeech/.venv/lib/python3.10/site-packages/sentry_sdk/_log_batcher.py
<dictcomp>!   s    z3LogBatcher._to_transport_format.<locals>.<dictcomp>)	timestampr   r   levelr   r   )intgetstritems)r   resr   r   r   _to_transport_format   s   



zLogBatcher._to_transport_formatNc              	   C   s@   t | j| jdditd| |gidd}| jdd|dd d S )	N
item_count   r!   )json)typecontent_typeheaderspayloadqueue_overflowlog_item)reasondata_categoryr   quantity)r   TYPECONTENT_TYPEr   r#   _record_lost_func)selfr   r,   r   r   r   _record_lost(   s   	
zLogBatcher._record_lost)r   r	   r   r   )r   r	   r   N)__name__
__module____qualname__MAX_BEFORE_FLUSHMAX_BEFORE_DROPFLUSH_WAIT_TIMEr0   r1   staticmethodr#   r4   r   r   r   r   r
      s    r
   r	   N)typingr   sentry_sdk._batcherr   sentry_sdk.utilsr   sentry_sdk.enveloper   r   r   sentry_sdk._typesr	   r
   r   r   r   r   <module>   s    