o
    i                  	   @   s
  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lmZ d dlmZ d dlmZ dd	lmZ dd
lmZ edee jdddee jdddejedd eede eejde defddZdeeef fddZdd Zdd ZdS )    N)wrap_function_wrapper)config)Pin)unwrap)schematize_service_name)asbool   )
_wrap_send)TracedSessionrequestsDD_REQUESTS_DISTRIBUTED_TRACINGT)defaultDD_REQUESTS_SPLIT_BY_DOMAINF)distributed_tracingsplit_by_domaindefault_http_tag_query_string_default_servicesend_configreturnc                   C   s   t tddS )N__version__ )getattrr    r   r   [/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/contrib/internal/requests/patch.pyget_version!   s   r   c                   C   s   ddiS )Nr   z>=2.25.1r   r   r   r   r   _supported_versions%   s   r   c                  C   sX   t tddrdS dt_tddt tjr ddlm}  tdd	|  t	t
jd
tj dS )zActivate http calls tracing__datadog_patchFNTr   zSession.sendr   ) wrapped_request_D8CB81E472AF98A2zSession.requestr   )r   r   r   _wr	   
asm_config_load_modules%ddtrace.appsec._common_module_patchesr   r   r   ontoSession)_wrap_requestr   r   r   patch)   s   r'   c                   C   sb   t tddsdS dt_zttjd W n	 ty   Y nw z	ttjd W dS  ty0   Y dS w )zDisable traced sessionsr   FNrequestr   )r   r   r   _ur%   AttributeErrorr   r   r   r   unpatch8   s   r+   ) osr   wraptr   r    ddtracer   ddtrace._trace.pinr   $ddtrace.contrib.internal.trace_utilsr   r)   ddtrace.internal.schemar   ddtrace.internal.settings.asmr!   ddtrace.internal.utils.formatsr   
connectionr	   sessionr
   _addgetenv_http_client_tag_query_stringr$   strr   dictr   r'   r+   r   r   r   r   <module>   s2    