
    lhC                        d dl Z d dlmZ d dlZd dlmZmZmZ d dlmZm	Z	 d dl
mZmZ d dlmZ d dlmZmZmZ d dlmZmZmZmZmZ d d	lmZ er-d d
lmZmZmZmZmZ d dl m!Z!m"Z"m#Z# d dlm$Z$  ededef         Z%	 d dl&m'Z'm(Z(m)Z)m*Z*m+Z+ d dl,m-Z-m.Z.m/Z/ e-e.e/fZ1 G d de      Z2d Z3d Z4d Z5d Z6d Z7y# e0$ r	  ed      w xY w)    N)datetime)continue_traceget_baggageget_traceparent)OP
SPANSTATUS)DidNotEnableIntegration)should_send_default_pii)BAGGAGE_HEADER_NAMESENTRY_TRACE_HEADER_NAMETransactionSource)capture_internal_exceptionsensure_integration_enabledevent_from_exceptionSENSITIVE_DATA_SUBSTITUTEreraise)TYPE_CHECKING)AnyCallableOptionalUnionTypeVar)EventProcessorEventHint)ExcInfoF.)bound)HueyResultResultGroupTaskPeriodicTask)CancelExecution	RetryTaskTaskLockedExceptionzHuey is not installedc                   *    e Zd ZdZde Zed        Zy)HueyIntegrationhueyzauto.queue.c                  ,    t                t                y N)patch_enqueuepatch_execute     n/var/www/pru.catia.catastroantioquia-mas.com/tasa/lib/python3.12/site-packages/sentry_sdk/integrations/huey.py
setup_oncezHueyIntegration.setup_once.   s     	r0   N)__name__
__module____qualname__
identifieroriginstaticmethodr2   r/   r0   r1   r)   r)   *   s%    J:,'F r0   r)   c                  l    t         j                  t        t              fd       } | t         _        y )Nc                 4   t        j                  t        j                  |j                  t
        j                        5  t        |t              s+t        t               t        t               i|j                  d<    | |      cd d d        S # 1 sw Y   y xY w)N)opnamer7   sentry_headers)
sentry_sdk
start_spanr   QUEUE_SUBMIT_HUEYr<   r)   r7   
isinstancer$   r   r   r   r   kwargs)selftaskold_enqueues     r1   _sentry_enqueuez&patch_enqueue.<locals>._sentry_enqueue9   s{     ""##"))
 	+
 dL1
 (,o.?1,- tT*	+ 	+ 	+s    ABB)r    enqueuer   r)   )rF   rE   s    @r1   r-   r-   5   s.    ,,K=+ >+" #DLr0   c                       fd}|S )Nc                    t               5  | j                  di       }j                  |d<   j                  j                  kD  |d<   | j                  di       }j
                  t               rj                  nt        t               rj                  nt        j                  xs dj                  z
  d|d<   d d d        | S # 1 sw Y   | S xY w)Ntagshuey_task_idhuey_task_retryextrar   )rD   argsrB   retryzhuey-job)
r   
setdefaultiddefault_retriesretriesr<   r   rN   r   rB   )eventhintrJ   rM   rD   s       r1   event_processorz._make_event_processor.<locals>.event_processorP   s     )* 	##FB/D#'77D &*&:&:T\\&ID"#$$Wb1E		 /0 II2 /0 KK2..3!t||C!E*	( )	( s   B3C		Cr/   )rD   rV   s   ` r1   _make_event_processorrW   N   s    2 r0   c                    t        j                         }| d   t        v r*|j                  j	                  t
        j                         y |j                  j	                  t
        j                         t        | t        j                         j                  t        j                  dd      \  }}|j                  ||       y )Nr   F)typehandled)client_options	mechanism)rU   )r>   get_current_scopeHUEY_CONTROL_FLOW_EXCEPTIONStransaction
set_statusr   ABORTEDINTERNAL_ERRORr   
get_clientoptionsr)   r6   capture_event)exc_infoscoperT   rU   s       r1   _capture_exceptionrh   l   s    ((*E{22$$Z%7%78	  !:!:;&!,,.66*55%HKE4
 
D)r0   c                 8     t        t                fd       }|S )Nc                      	  | i |}|S # t         $ r+ t        j                         }t        |       t	        |  Y S w xY wr,   )	Exceptionsysrf   rh   r   )rN   rB   resultrf   funcs       r1   _sentry_executez+_wrap_task_execute.<locals>._sentry_execute   sO    	4*6*F   	||~Hx(X	s    0A A)r   r)   )rn   ro   s   ` r1   _wrap_task_executerp   }   s&      6	 7	 r0   c                  n    t         j                  t        t              dfd	       } | t         _        y )Nc                    t        j                         5 }t               5  d|_        |j	                          |j                  t        |             d d d        |j                  j                  dd       }t        |xs i |j                  t        j                  t        j                  t        j                         }|j#                  t$        j&                         t)        |dd      s!t+        |j,                        |_        d|_        t        j0                  |      5   | ||      cd d d        cd d d        S # 1 sw Y   xY w# 1 sw Y   nxY w	 d d d        y # 1 sw Y   y xY w)Nr*   r=   )r<   r;   sourcer7   _sentry_is_patchedFT)r>   isolation_scoper   _nameclear_breadcrumbsadd_event_processorrW   rB   popr   r<   r   QUEUE_TASK_HUEYr   TASKr)   r7   r`   r   OKgetattrrp   executert   start_transaction)rC   rD   	timestamprg   r=   r_   old_executes         r1   ro   z&patch_execute.<locals>._sentry_execute   s5    '') 	:U,. G$'')))*?*EFG
 "[[__-=tDN($"YY%%(--&--K "":==14!5u=1$,,?*.'--k: :"4y9: :+	: 	:G G(: : :+	: 	: 	:s;   E 2D>CE !
E
+	E >E	E 
E	E  E)r,   )r    _executer   r)   )ro   r   s    @r1   r.   r.      s.    --K=: >:4 $DMr0   )8rl   r   r>   sentry_sdk.apir   r   r   sentry_sdk.constsr   r   sentry_sdk.integrationsr	   r
   sentry_sdk.scoper   sentry_sdk.tracingr   r   r   sentry_sdk.utilsr   r   r   r   r   typingr   r   r   r   r   r   sentry_sdk._typesr   r   r   r   r   huey.apir    r!   r"   r#   r$   huey.exceptionsr%   r&   r'   ImportErrorr^   r)   r-   rW   rh   rp   r.   r/   r0   r1   <module>r      s    
   G G , = 4 
  !>>==(8CH-.A0FFOO
 !0<OP k #2<*"$$Y  0
.
//0s   =B5 5C