o
    i                  
   @   s   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l	m
Z
 eeZe jddG d	d
 d
Z		ddededee dee fddZdedefddZdS )    N)Optional)ERROR_TYPES)
get_logger)telemetry_writer)TELEMETRY_NAMESPACET)frozenc                   @   s2   e Zd ZU eed< eed< ee ed< eed< dS )APIRequestMetricNamescountdurationresponse_byteserrorN)__name__
__module____qualname__str__annotations__r    r   r   h/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/internal/ci_visibility/telemetry/api_request.pyr      s
   
 r   metric_namesr
   r   r   c                 C   s~   t d| j||| ttj| j d ttj| j | |d ur1| j	d ur1ttj| j	 | |d ur=t
| j| d S d S )Nz8Recording Test Optimization telemetry for %s: %s, %s, %s   )logdebugr	   r   add_count_metricr   CIVISIBILITYadd_distribution_metricr
   r   record_api_request_errorr   )r   r
   r   r   r   r   r   record_api_request   s"   
r   error_metric_namec                 C   s(   t d| ttj| dd|ff d S )Nz7Recording Test Optimization request error telemetry: %sr   
error_type)r   r   r   r   r   r   )r   r   r   r   r   r   1   s   r   )NN)dataclassestypingr   2ddtrace.internal.ci_visibility.telemetry.constantsr   ddtrace.internal.loggerr   ddtrace.internal.telemetryr   $ddtrace.internal.telemetry.constantsr   r   r   	dataclassr   floatintr   r   r   r   r   r   r   <module>   s*    


