o
    /if[                     @   s>  d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dlm	Z	 d dl
mZ d dlmZ dd Zd	d
 Ze shejddddddd ee	  e ZdZdZeedeidZeeZee eeZeddkr~e s~eds~dd Zee_edefddZ ed#dede!fddZ"ed$d e#fd!d"Z$dS )%    )contextmanagerN)trace)TracerProvider)BatchSpanProcessor)OTLPSpanExporterc                   C   s   t ddkS )NDEEPEVAL_TELEMETRY_OPT_OUTYES)osgetenv r   r   K/var/www/html/corbot_env/lib/python3.10/site-packages/deepeval/telemetry.pytelemetry_opt_out   s   r   c                   C   s&   zt d W dS  ty   Y dS w )N)zwww.google.comP   FT)socketcreate_connectionOSErrorr   r   r   r   blocked_by_firewall   s   
r   z\https://5ef587d58109ee45d6544f3657efdd1f@o4506098477236224.ingest.sentry.io/4506098479136768g      ?F)dsnprofiles_sample_ratetraces_sample_ratesend_default_piiattach_stacktracedefault_integrations(1711c684db8a30361a7edb0d0398772cFFFFNRALzhttps://otlp.nr-data.net:4317zapi-key)endpointheadersERROR_REPORTINGr   TELEMETRY_OPT_OUTc                 C   s*   t | |d t| t| || d S )N)exc_type	exc_value)print
sentry_sdkcapture_exceptionsys__excepthook__)r   r   exc_tracebackr   r   r   handle_exception>   s   
r&   typec                 c   sN    t  s"td|  }|V  W d    d S 1 sw   Y  d S d V  d S )NzRan r   tracerstart_as_current_span)r'   spanr   r   r   capture_evaluation_runF   s   "
r,   Tmetric_name_trackc                 c   sL    t  s!|r!t| }|V  W d    d S 1 sw   Y  d S d V  d S Nr(   )r-   r.   r+   r   r   r   capture_metric_typeO   s   
"
r0   max_generationsc                 c   sX    t  s'| d ur'td|  d}|V  W d    d S 1 s w   Y  d S d V  d S )NzInvokved synthesizer ()r(   )r1   r+   r   r   r   capture_synthesizer_runX   s   
"
r3   )Tr/   )%
contextlibr   r	   r   r#   r!   opentelemetryr   opentelemetry.sdk.tracer   opentelemetry.sdk.trace.exportr   5opentelemetry.exporter.otlp.proto.grpc.trace_exporterr   r   r   initset_tracer_providerget_tracer_providertracer_providerNEW_RELIC_LICENSE_KEYNEW_RELIC_OTLP_ENDPOINTotlp_exporterspan_processoradd_span_processor
get_tracer__name__r)   r
   r&   
excepthookstrr,   boolr0   intr3   r   r   r   r   <module>   sX    


