o
    ùT·jÊ  ã                   @   sœ   U d dl Z d dlZd dlmZ ddlmZ e d¡Zeje	d< h d£Z
ejejejejejdœZdd
d„Zded	efdd„Zddd„ZG dd„ dejƒZdS )é    N)Úoverrideé   )Úis_dictÚopenaiÚlogger>   úapi-keyúx-amz-security-tokenÚauthorization)ÚdebugÚinfoÚwarningÚerrorÚcriticalÚreturnc                   C   s   t jddd� d S )Nz?[%(asctime)s - %(name)s:%(lineno)d - %(levelname)s] %(message)sz%Y-%m-%d %H:%M:%S)ÚformatÚdatefmt)ÚloggingÚbasicConfig© r   r   úV/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/openai/_utils/_logs.pyÚ_basic_config   s   
þr   Úmethodc                 C   s   |   ¡ }|dv r
|S dS )N>	   ÚGETÚPUTÚHEADÚPOSTÚPATCHÚTRACEÚDELETEÚCONNECTÚOPTIONSz<custom>)Úupper)r   Ú
normalizedr   r   r   Úget_http_method_for_logging   s   r#   c                  C   sB   t j d¡} | d u rd S t | ¡}|d u rd S tƒ  t |¡ d S )NÚ
OPENAI_LOG)ÚosÚenvironÚgetÚ_LOG_LEVELSr   r   ÚsetLevel)ÚenvÚlevelr   r   r   Úsetup_logging#   s   
r,   c                   @   s$   e Zd Zedejdefdd„ƒZdS )ÚSensitiveHeadersFilterÚrecordr   c                 C   s`   t |jƒr.d|jv r.t |jd ƒr.i |jd ¥ }|jd< |D ]}t|ƒ ¡ tv r-d||< qdS )NÚheadersz
<redacted>T)r   ÚargsÚstrÚlowerÚSENSITIVE_HEADERS)Úselfr.   r/   Úheaderr   r   r   Úfilter3   s   "€zSensitiveHeadersFilter.filterN)Ú__name__Ú
__module__Ú__qualname__r   r   Ú	LogRecordÚboolr6   r   r   r   r   r-   2   s    r-   )r   N)r%   r   Útyping_extensionsr   Ú_utilsr   Ú	getLoggerr   ÚLoggerÚ__annotations__r3   ÚDEBUGÚINFOÚWARNINGÚERRORÚCRITICALr(   r   r1   r#   r,   ÚFilterr-   r   r   r   r   Ú<module>   s    
 û
	
