PATH:
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
sentry_sdk
/
integrations
/
opentelemetry
/
__pycache__
� Aa�ڷ�]B� � � d dl m Z d dlmZ d dlmZ d dlmZ d dlmZm Z m Z mZmZ mZ d dlmZmZ d dlmZ d dlmZ d d lmZmZ d d lmZ d dlmZmZ d dlmZ d d l m!Z! d dl"m#Z$ e!rd dl%m&Z&m'Z'm(Z(m)Z) d dl m*Z*m+Z+ dZ,d� Z- G d� de� � Z.dS )� )�datetime)� get_value)� SpanProcessor)�SpanAttributes)�format_span_id�format_trace_id�get_current_span�SpanContext�Span�SpanKind)�INVALID_SPAN_ID�INVALID_TRACE_ID)�INSTRUMENTER)�Hub)�SENTRY_BAGGAGE_KEY�SENTRY_TRACE_KEY��add_global_event_processor)�Transactionr )�Dsn)� TYPE_CHECKING)� parse_url)�Any�Dict�Optional�Union)�Event�Hint�otelc �V � t j }|s| S |j r"|j j d t j k r| S t | d� � r| d dk r| S t � � }|s| S |� � � }t |j � � }t |j � � }|t k s|t k r| S |� |d � � }|s| S | � di � � }|� di � � � |� � � � � | S )N�instrumenter�type�transaction�contexts�trace)r �current�client�optionsr �OTEL�hasattrr �get_span_contextr �trace_idr �span_idr r �get� setdefault�update�get_trace_context) �event� otel_span_map�hub� otel_span�ctxr, r- �sentry_spanr$ s ��/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/sentry_sdk/integrations/opentelemetry/span_processor.py�!link_trace_context_to_error_eventr9 '