o
    i                     @   s   d dl Z d dlZd dlZd dlZd dlZd dlmZ edejZ	dZ
dd Zdd Zd	d
 Zdd Zedd Zdd Zdd ZdS )    N)conditional_lru_cachez[^\w\d_\-:/\.]_c                 C   s   t j| dddS )NT   )	sort_keysindent)jsondumps)obj r
   G/home/ubuntu/.local/lib/python3.10/site-packages/datadog/util/format.pypretty_json   s   r   c                 C   s    d | d|d|dS )Nz{}/api/{}/{}/formatstrip)hostapi_versionpathr
   r
   r   construct_url   s    r   c                 C   s   d | d|dS )Nz{}/{}r   r   )r   r   r
   r
   r   construct_path   s   r   c                 C   s   t | tjrt|  S | S N)
isinstancedatetimecalendartimegm	timetuple)epoch_sec_or_dtr
   r
   r   force_to_epoch_seconds   s   r   c                 C   s   dd | D S )Nc                 S   s   g | ]}t t|qS r
   )TAG_INVALID_CHARS_REsubTAG_INVALID_CHARS_SUBS).0tagr
   r
   r   
<listcomp>%   s    z._normalize_tags_with_cache.<locals>.<listcomp>r
   tag_listr
   r
   r   _normalize_tags_with_cache#   s   r&   c                 C   s   t t| S r   )r&   tupler$   r
   r
   r   normalize_tags(   s   r(   c                 C   s   | dvrt d d S | S )N)NnoneloworchestratorhighzwCardinality must be one of the following: 'none', 'low', 'orchestrator' or 'high'. Falling back to default cardinality.)loggingwarning)cardinalityr
   r
   r   validate_cardinality.   s   r0   )r   r   r   r-   redatadog.util.compatr   compileUNICODEr   r    r   r   r   r   r&   r(   r0   r
   r
   r
   r   <module>   s    
