
    CjD                        % S SK Jr  S SKrS SKrS SKJr  \(       a  SSKJr  SqS\	S'   \R                  " 5       rSqSS	 jrSS
 jrSS jrg)    )annotationsN)TYPE_CHECKING   )TraceProviderzTraceProvider | NoneGLOBAL_TRACE_PROVIDERFc                 8    [         n U b  U R                  5         g g )N)r   shutdownproviders    f/home/rurouni/.local/share/pipx/venvs/strix-agent/lib/python3.13/site-packages/agents/tracing/setup.py_shutdown_global_trace_providerr      s    $H     c                    [            U q[        (       d  [        R                  " [
        5        SqSSS5        g! , (       d  f       g= f)z8Set the global trace provider used by tracing utilities.TN)_GLOBAL_TRACE_PROVIDER_LOCKr   _SHUTDOWN_HANDLER_REGISTEREDatexitregisterr   r
   s    r   set_trace_providerr      s2    
 
% (++OO;<+/(	 
%	$	$s	   *:
Ac                    [         n U b  U $ [           [         n U c+  SSKJn  SSKJn  U" 5       n U R                  U" 5       5        U q [        (       d  [        R                  " [        5        SqSSS5        U $ ! , (       d  f       U $ = f)zGet the global trace provider used by tracing utilities.

The default provider and processor are initialized lazily on first access so
importing the SDK does not create network clients or threading primitives.
Nr   )default_processor)DefaultTraceProviderT)r   r   
processorsr   r   r   register_processorr   r   r   r   )r   r   r   s      r   get_trace_providerr   !   s}     %H	$(56+-H''(9(;<$,!++OO;<+/( 
% O 
%	$ Os   AA88
B)returnNone)r   r   r   r   )r   r   )
__future__r   r   	threadingtypingr   r   r   r   __annotations__Lockr   r   r   r   r    r   r   <module>r#      sE    "    '.2 + 2'nn. $ 	0r   