
    ci\                        U d dl mZ d dlZd dlZd dlmZmZmZ 	 d dlm	Z	  e	j
        d          Zded<   n# e$ r dZY nw xY wd dlmZ d	Zd
ZdZ G d d          ZdS )    )annotationsN)	GeneratorLiteralMapping)tracezelasticsearch-apitrace.Tracer | None_tracer)OpenTelemetrySpan1OTEL_PYTHON_INSTRUMENTATION_ELASTICSEARCH_ENABLED>OTEL_PYTHON_INSTRUMENTATION_ELASTICSEARCH_CAPTURE_SEARCH_QUERYomitc                      e Zd Z	 	 	 dddZej        dd            Zej        dd            Zej        dd            ZdS )OpenTelemetryNenabledbool | Nonetracerr   body_strategyLiteral['omit', 'raw'] | Nonec                "   |)t           j                            t          d          dk    }|pt          | _        |o| j        d u| _        |	|| _        d S t           j                            t          t                    | _        | j        dv sJ d S )Ntrue)r   raw)
osenvirongetENABLED_ENV_VARr	   r   r   r   BODY_STRATEGY_ENV_VARDEFAULT_BODY_STRATEGY)selfr   r   r   s       S/var/www/html/auto_sub_bot/venv/lib/python3.11/site-packages/elasticsearch/_otel.py__init__zOpenTelemetry.__init__,   s     ?jnn_f==GG':4;d#:$!.D!#%'<" "D %888888    methodstrendpoint_id
str | None
path_partsMapping[str, str]return(Generator[OpenTelemetrySpan, None, None]c             #    K   | j         r| j        t          d           V  d S |p|}| j                            |          5 }|                    d|           |                    dd           ||                    d|           |                                D ]\  }}|                    d| |           t          ||| j                  V  d d d            d S # 1 swxY w Y   d S )Nhttp.request.method	db.systemelasticsearchdb.operationzdb.elasticsearch.path_parts.)r$   r   )r   r   r
   start_as_current_spanset_attributeitemsr   )r   r"   r$   r&   	span_name	otel_spankeyvalues           r   spanzOpenTelemetry.span?   sl      | 	t{2#D)))))F)6	[..y99 	Y##$96BBB##KAAA&''DDD(..00 U U
U''(Ls(L(LeTTTT#'"0     	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   BC  C$'C$r2   c              #  X  K   | j         r| j        t          d           V  d S | j                            |          5 }|                    dd           |                    d|           |                    dd           t          |          V  d d d            d S # 1 swxY w Y   d S )Nr,   r-   r.   r+   null)r   r   r
   r/   r0   )r   r2   r3   s      r   helpers_spanzOpenTelemetry.helpers_spanZ   s      | 	t{2#D)))))F[..y99 	/Y##KAAA##NI>>>##$96BBB#I.....	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/ 	/s   ABB#&B#r6   r
   Generator[None, None, None]c              #     K   | j         r| j        |j        d V  d S t          j        |j                  5  d V  d d d            d S # 1 swxY w Y   d S )N)r   r   r3   r   use_span)r   r6   s     r   r<   zOpenTelemetry.use_spang   s      | 	t{2dn6LEEEF^DN++ 	 	EEE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	s   A		AA)NNN)r   r   r   r   r   r   )r"   r#   r$   r%   r&   r'   r(   r)   )r2   r#   r(   r)   )r6   r
   r(   r:   )	__name__
__module____qualname__r    
contextlibcontextmanagerr6   r9   r<    r!   r   r   r   +   s          $&*7;	9 9 9 9 9&    4 
/ 
/ 
/ 
/      r!   r   )
__future__r   r@   r   typingr   r   r   opentelemetryr   
get_tracerr	   __annotations__ImportErrorelastic_transportr
   r   r   r   r   rB   r!   r   <module>rJ      s  $ # " " " " " "     				 . . . . . . . . . .#######35#34G#H#HGHHHHH   GGG 0 / / / / / F
 Y  C C C C C C C C C Cs   7 A A