관리-도구
편집 파일: utils.cpython-38.pyc
U �Mg� � @ s^ d dl Z d dlmZ d dlmZ d dlmZ d dlmZ e�rd dl m Z d dlmZ d dlm Z d d lmZ d d lmZ d dlmZ d dlmZ d d lmZ eZee Zedeee eeee d��Zeddei�Zeeeef Zeedf Zeeef Zeeeee f Zeeeef ZdZdZ e�r6dd� Z!ndd� Z!dd� Z"dd� Z#e fdd�Z$dS )� N)�deque)�PY311)�filename_for_module)� TYPE_CHECKING)�LRUCache)� FrameType)�Deque)�List)�Optional)�Sequence)�Tuple)� TypedDict�ProcessedFrame)�abs_path�filename�function�lineno�module�ProcessedThreadMetadata�name.�e � c C s | j jS �N)�f_codeZco_qualname)�frame� r �G/opt/hc_python/lib/python3.8/site-packages/sentry_sdk/profiler/utils.py�get_frame_nameB s r c C s� | j }|j}|j}zP|r`|d dkr`d| jkr`| jd jjD ]"}||jkr<d�|j|� W S q<W n t t fk rz Y nX zN|r�|d dkr�d| jkr�| jd jD ]"}||jkr�d�|j|� W S q�W n t t fk r� Y nX |S )Nr �selfz{}.{}�cls)r �co_varnames�co_name�f_locals� __class__�__mro__�__dict__�format�__name__�AttributeError� ValueError)r r r r r r r r r H s8 � �� � �� c C s | j j| jt| �fS r )r �co_filename�f_linenor )� raw_framer r r �frame_idx s r- c C sZ |j j}z|jd }W n tk r. d }Y nX tj�||�|t||�pJd | d |jd�S )Nr'