
    j                    j    d dl mZ d dlZd dlmZ ddlmZ  G d d      Z e       ZddZ	dd	Z
dd
Zy)    )annotationsN)Optional   )configc                  ,    e Zd ZddZddZddZddZy)	TracingRuntimeConfigc                D    t        j                         | _        d | _        y N)	threadingRLock_lock_tracing_activeselfs    t/Users/manta/Documents/Projects/TheRoad-I1/backend/.venv/lib/python3.12/site-packages/opik/tracing_runtime_config.py__init__zTracingRuntimeConfig.__init__	   s    __&
/3    c                T    | j                   5  || _        d d d        y # 1 sw Y   y xY wr
   r   r   )r   actives     r   set_tracing_activez'TracingRuntimeConfig.set_tracing_active   s    ZZ#)D  ZZ   'c                T    | j                   5  d | _        d d d        y # 1 sw Y   y xY wr
   r   r   s    r   reset_to_config_defaultz,TracingRuntimeConfig.reset_to_config_default   s    ZZ#'D  ZZr   c                    | j                   5  | j                  | j                  cd d d        S 	 d d d        	 t        j                         j                   }|| _        |S # 1 sw Y   2xY w# t
        $ r Y yw xY w)NT)r   r   r   
OpikConfigtrack_disable	Exception)r   enableds     r   is_tracing_activez&TracingRuntimeConfig.is_tracing_active   ss    ZZ##/++ Z/ 	 ++-;;;G#*D 
  Z  		s   A!&A- !A*-	A98A9NreturnNoner   boolr"   r#   r"   r%   )__name__
__module____qualname__r   r   r   r     r   r   r   r      s    4*(r   r   c                .    t         j                  |        y r
   )runtime_configr   )r   s    r   r   r   '   s    %%f-r   c                 *    t         j                         S r
   )r,   r    r*   r   r   r    r    +   s    ++--r   c                 ,    t         j                          y r
   )r,   r   r*   r   r   reset_tracing_to_config_defaultr/   /   s    **,r   r$   r&   r!   )
__future__r   r   typingr    r   r   r,   r   r    r/   r*   r   r   <module>r3      s4    "    8 &'..-r   