o
    h                     @   sp   d dl Z d dlZd dlmZmZ d dlmZ d dlmZ er*d dlm	Z	 d dlm
Z
 G dd deZd	d
 ZdS )    N)capture_internal_exceptionsevent_from_exception)Integration)TYPE_CHECKING)Callable)Anyc                   @   s   e Zd ZdZedd ZdS )UnraisablehookIntegrationunraisablehookc                   C   s   t tjt_d S )N)_make_unraisablesysr	    r   r   h/var/www/html/pro-man-master/venv/lib/python3.10/site-packages/sentry_sdk/integrations/unraisablehook.py
setup_once   s   z$UnraisablehookIntegration.setup_onceN)__name__
__module____qualname__
identifierstaticmethodr   r   r   r   r   r      s    r   c                    s    fdd}|S )Nc                    s   t  t}|d u r | S | jrG| jrGt ' t| j| j| jft  j	dddd\}}t j
||d W d     | S 1 sBw   Y   | S )Nr	   F)typehandled)client_options	mechanism)hint)
sentry_sdk
get_clientget_integrationr   	exc_valueexc_tracebackr   r   exc_typeoptionscapture_event)
unraisableintegrationeventr   old_unraisablehookr   r   sentry_sdk_unraisablehook   s$   
	
z3_make_unraisable.<locals>.sentry_sdk_unraisablehookr   )r%   r&   r   r$   r   r
      s   r
   )r   r   sentry_sdk.utilsr   r   sentry_sdk.integrationsr   typingr   r   r   r   r
   r   r   r   r   <module>   s    	