bgQddlmZddlZddlmZddlmZddlmZddl m Z ddl m Z ddl mZmZdd lmZdd lmZmZdd lmZmZmZmZ ddlZdd lmZdd lm Z ddlm!Z!m"Z"m#Z#m$Z$n#e%$r edwxYwer0ddl&m'Z'm(Z(m)Z)m*Z*ddlm+Z+m,Z,m-Z-m.Z.ddl/m0Z0ddl1m2Z2ddl3m4Z4ddlm5Z5e!e"e#fZ6GddeZ7dZ8dZ9dZ:dZ;dZdZ?dS) )absolute_importN)reraise) TYPE_CHECKING)Hub)OP)_should_send_default_pii) DidNotEnable Integration) ignore_logger) TransactionTRANSACTION_SOURCE_TASK)capture_internal_exceptionsevent_from_exceptionSENSITIVE_DATA_SUBSTITUTE parse_version)VERSION)ArqRedis)JobExecutionFailedRetryRetryJobWorkerzArq is not installed)AnyDictOptionalUnion)EventProcessorEventExcInfoHint)CronJob)Job)WorkerCoroutine)Functionc(eZdZdZedZdS)ArqIntegrationarqc tttrtt}ntjdd}n#t t f$rd}YnwxYw|'tdt|dkrtdttttddS)NzUnparsable arq version: {})rzarq 0.23 or newer required.z arq.worker) isinstance ARQ_VERSIONstrrversion TypeError ValueErrorr formatpatch_enqueue_job patch_run_jobpatch_create_workerr )r-s l/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/sentry_sdk/integrations/arq.py setup_oncezArqIntegration.setup_once,s +s++ 2' 44%-bqb1:&   GGG  ?;BB;OOPP P W  <== =l#####sAAAAN)__name__ __module__ __qualname__ identifier staticmethodr5r4r%r%)s2J$$\$$$r<r%cBtjfd}|t_dS)NcKtj}|t||g|Ri|d{VS|t j|5||g|Ri|d{VcdddS#1swxYwYdS)N)op description)rcurrentget_integrationr% start_spanrQUEUE_SUBMIT_ARQ)selffunctionargskwargshubold_enqueue_jobs r4_sentry_enqueue_jobz.patch_enqueue_job.._sentry_enqueue_jobJsk   ~ . . 6(xI$III&IIIIIIII I ^^r2^ I I J J(xI$III&IIIIIIII J J J J J J J J J J J J J J J J J JsA>>BB)r enqueue_job)rKrJs @r4r1r1Fs9*OJJJJJ/Hr<cBtjfd}|t_dS)NcKttj}|t|||d{VS|5}d|_|tddtj t}| |5|||d{VcdddcdddS#1swxYwY ddddS#1swxYwYdS)Nr&zunknown arq taskok)namestatusr?source) rrArBr% push_scope_nameclear_breadcrumbsr rQUEUE_TASK_ARQr start_transaction)rEjob_idscorerIscope transaction old_run_jobs r4_sentry_run_jobz&patch_run_job.._sentry_run_job[s#+   ~ . . 6$T6599999999 9 ^^   >EK  # # % % %%'$. K&&{33 > >([vu======== > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >s7AC61C C6C! !C6$C! %C66C:=C:)rrun_job)r]r\s @r4r2r2Ws0.K>>>>>*%FNNNr<cltj}|jjO|dtvr!|jjddS|jjdt ||jr |jjndtj dd\}}| ||dS)Nrabortedinternal_errorF)typehandled)client_options mechanism)hint) rrArZr[ARQ_CONTROL_FLOW_EXCEPTIONS set_statusrclientoptionsr%r9 capture_event)exc_inforIeventrfs r4_capture_exceptionrnss +C y( A;5 5 5 I ! , ,Y 7 7 7 F (()9:::&-0ZAsz))T)4GGKE4 e$'''''r<cfd}|S)Nctj}t5|jj"d|jj_d|d<|di}d|d<ddk|d<|d i}dtrnttrntdd |d <dddn #1swxYwY|S) Njob_namer[tagsrX arq_task_idjob_tryarq_task_retryextra)taskrGrHretryzarq-job) rrArrZr[rP setdefaultrr)rmrfrIrrrwrGctxrHs r4event_processorz._make_event_processor..event_processors3k ( * *  y$0-0_ %*'*:m$##FB//D"%h-D %(^a%7D! "$$Wb11EJ+--/.+--/&&.Y  E)                ( sB5CC!$C!r;)r{rGrHr|s``` r4_make_event_processorr}s06 r<cfd}|S)NcnKtj}|t|i|d{VS|jt i|dig|Ri| |g|Ri|d{V}n;#t$r.tj }t|t|YnwxYw|S)Nrq) rrArBr%rZadd_event_processorr} Exceptionsysrlrnr)r{rGrHrIresultrl coroutinerPs r4_sentry_coroutinez*_wrap_coroutine.._sentry_coroutinesk   ~ . . 6"D3F33333333 3 %% !";S";*d";"; Md M M Mf M M    $9S:4:::6::::::::FF   |~~H x ( ( ( X       s'A::5B21B2r;)rPrrs`` r4_wrap_coroutiners*& r<cVtjjfd}|tj_dS)Nctj}|t|i|S|d}|j}|j}d|D|_d|D|_|i|S)Nrc,g|]}t|Sr;)_get_arq_function).0funcs r4 zFpatch_create_worker.._sentry_create_worker..s!!P!P!Pd"3D"9"9!P!P!Pr<c,g|]}t|Sr;)_get_arq_cron_job)rcron_jobs r4rzFpatch_create_worker.._sentry_create_worker..s!!X!X!X("3H"="=!X!X!Xr<)rrArBr% functions cron_jobs)rGrHrI settings_clsrrold_create_workers r4_sentry_create_workerz2patch_create_worker.._sentry_create_workersk   ~ . . 6$$d5f55 5Aw  *  * !P!Pi!P!P!P !X!Xi!X!X!X   $1&111r<)r&worker create_worker)rrs @r4r3r3s9 022222" 5CJr<ctj|}t|j|j|_|SN)r&rrrrPr)rarq_funcs r4rrs1zt$$H(8JKKH Or<cDt|j|j|_|Sr)rrPr)rs r4rrs(8JKKH Or<)@ __future__rrsentry_sdk._compatrsentry_sdk._typesr sentry_sdkrsentry_sdk.constsrsentry_sdk.hubrsentry_sdk.integrationsr r sentry_sdk.integrations.loggingr sentry_sdk.tracingr r sentry_sdk.utilsrrrr arq.workerr& arq.versionrr+arq.connectionsrrrrr ImportErrortypingrrrrrrrrarq.cronr arq.jobsr! arq.typingr"r#rgr%r1r2rnr}rr3rrr;r<r4rs&&&&&& &&&&&&++++++ 333333========999999CCCCCCCC/222222((((((FFFFFFFFFFFFF/// ,- . ../$111111111111FFFFFFFFFFFF      ******######15(C$$$$$[$$$:///"%%%8(((&@05550s A))A: