o
    iS                  	   @   s   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l	mZ d dlmZ d dlmZ d d	lmZ ed
eee jddded
d
d defddZdeeef fddZdd Zdd Zdd ZdS )    N)config)Pin)TracedConnection)db)net)schematize_service_name)asbool)unwrapmariadbDD_MARIADB_TRACE_FETCH_METHODSF)default)trace_fetch_methods_default_service_dbapi_span_name_prefixreturnc                   C   s   t tddS )N__version__ )getattrr
    r   r   Z/home/ubuntu/.local/lib/python3.10/site-packages/ddtrace/contrib/internal/mariadb/patch.pyget_version   s   r   c                   C   s   ddiS )Nr
   z>=1.0.0r   r   r   r   r   _supported_versions   s   r   c                   C   s(   t tddrd S dt_tddt d S )N_datadog_patchFTr
   connect)r   r
   r   wraptwrap_function_wrapper_connectr   r   r   r   patch"   s   r   c                   C   s$   t tddrdt_ttd d S d S )Nr   Fr   )r   r
   r   r	   r   r   r   r   unpatch)   s   r   c                 C   s   | |i |}t j|ddt j|ddt j|ddtj|ddtj|ddtjdi}t	|d	}t
||tjd
}|| |S )Nhostz	127.0.0.1porti  usertestdatabaser
   )tags)pincfg)r   TARGET_HOSTgetTARGET_PORTSERVER_ADDRESSr   USERNAMESYSTEMr   r   r   r
   onto)funcinstanceargskwargsconnr$   r%   wrappedr   r   r   r   /   s   
	
r   )osr
   r   ddtracer   ddtrace._trace.pinr   ddtrace.contrib.dbapir   ddtrace.extr   r   ddtrace.internal.schemar   ddtrace.internal.utils.formatsr   ddtrace.internal.utils.wrappersr	   _adddictgetenvstrr   r   r   r   r   r   r   r   r   <module>   s0    
