˺h2LddlmZmZddlmZddlZddlmZmZddlm Z ddl m Z ddl m Z mZmZmZmZddlmZdd lmZdd lmZer7dd lmZdd lmZdd lmZddlmZddlmZmZmZededefZ dZ!dZ"dZ#dZ$dZ%GddeZ&dZ'dZ(dZ)dS))datetime timedelta)environN)Hub_should_send_default_pii) Transaction)reraise)AnnotatedValuecapture_internal_exceptionsevent_from_exceptionlogger TimeoutThread) Integration)_filter_headers)MYPY)Any)TypeVar)Callable)Optional)EventProcessorEventHintF.)boundig@@cfd}|S)Nctj}|t}| |i|S|j}t 5|5}|dddn #1swxYwYtj }|rCt|r4t||j ddd\}}| ||dddn #1swxYwY |i|S)N aws_lambdaFtypehandledclient_options mechanismhint)rcurrentget_integrationAwsLambdaIntegrationclientr configure_scopeclear_breadcrumbssysexc_infoallr options capture_event) argskwargshub integrationr)scoper-eventr% init_errors /builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib/python3.11/site-packages/sentry_sdk/integrations/aws_lambda.pysentry_init_errorz+_wrap_init_error..sentry_init_error%sk))*>??  :t.v.. . ( * * 4 4$$&& *%''))) * * * * * * * * * * * * * * *|~~H 4CMM 42#)>'3FF t !!%d!333 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4z4*6***s7C,A=1 C,=B C,B AC,,C03C0)r7r9s` r8_wrap_init_errorr;#s$+++++4 cfd}|S)Nc (tj}|t}| ||g|Ri|S|j}|}|5}t5|| t|||| d|j ddd} |jrI|tkr>|tz t z } t#| |t z } | dddn #1swxYwY|di} t)j| d|j} || 5 ||g|Ri|| r| cdddcdddS#t2$rSt5j} t9| |jddd  \}}||| t?| YnwxYw | r| n#| r| wwxYwdddn #1swxYwYddddS#1swxYwYdS) N aws_region:headerszserverless.function)opnamerFrr!r$) rr&r'r(r)get_remaining_time_in_millis push_scoper r+add_event_processor_make_request_event_processorset_taginvoked_function_arnsplittimeout_warningTIMEOUT_WARNING_BUFFERMILLIS_TO_SECONDSrstartgetrcontinue_from_headers function_namestart_transactionstop Exceptionr,r-r r/r0r )r6contextr1r2r3r4r)configured_timer5timeout_thread waiting_timerB transactionr-r%handlers r8sentry_handlerz%_wrap_handler..sentry_handlerDsk))*>??  75';D;;;F;; ;!>>@@ ^^  - .,.. + +'')))))1%/RR lG,H,N,Ns,S,STU,VWWW!% /+'*@@@(*@@)$*L&3$'*;;&&N #((***1 + + + + + + + + + + + + + + +4ii 2..G%;18MK&&{33 . . ."75'CDCCCFCC&.&++--- . . . . . . .?- .- .- .- .- .- .- .- .D!'''"|~~H"6 '-~+7E"J"J###KE4 %%e$%777X&&&&''%.&++---&.&++----. . . . . . . . . . . . . . . .?- .- .- .- .- .- .- .- .- .- .- .- .- .- .- .- .- .- .s&J5B?E4 JE JE A JI/ G I/6 JAH,)I+H,,I0I/I  I/# J/I3 3J6I3 7JJ J r:)r[r\s` r8 _wrap_handlerr]Bs%8.8.8.8.8.t r<ct5tj}|t}||ddddS#1swxYwYdSN)r rr&r'r(flush)r3r4s r8 _drain_queueras $ & &k))*>??  " IIKKK s=AA Ac0eZdZdZddZedZdS)r(rFc||_dSr_)rL)selfrLs r8__init__zAwsLambdaIntegration.__init__s.r<cdtjvrtjd}n7dtjvrtjd}ntjddSt |dstjddSt |d}|r;|jfd}||_|jfd}||_|jfd }||_dSt|j j |j _ |jfd }||_d }||j j |j _ ||j j |j _ dS) N bootstrap__main__zfNot running in AWS Lambda environment, AwsLambdaIntegration disabled (could not find bootstrap module)handle_event_requestzjNot running in AWS Lambda environment, AwsLambdaIntegration disabled (could not find handle_event_request)handle_http_requestc:t|}|g|Ri|Sr_r])request_handlerr1r2old_handle_event_requests r8sentry_handle_event_requestzDAwsLambdaIntegration.setup_once..sentry_handle_event_requests1"/"@"@//Q$QQQ&QQQr<c:t|}|g|Ri|Sr_rl)rmr1r2old_handle_http_requests r8sentry_handle_http_requestzCAwsLambdaIntegration.setup_once..sentry_handle_http_requests1"/"@"@..PPPPPPPr<c0t|i|Sr_ra)r1r2 old_to_jsons r8sentry_to_jsonz7AwsLambdaIntegration.setup_once..sentry_to_jsons!"{D3F333r<c<t|}||g|Ri|Sr_rl)lambda_runtime_clientrmr1r2rns r8rozDAwsLambdaIntegration.setup_once..sentry_handle_event_requestsF#0"@"@//)?=AEKr<cfd}|S)Nc0t|i|Sr_rt)r1r2fs r8innerzKAwsLambdaIntegration.setup_once.._wrap_post_function..inners! NNN1d-f---r<r:)r{r|s` r8_wrap_post_functionz._wrap_post_functions#.....  r<) r,modulesr warninghasattrrirjto_jsonr;LambdaRuntimeClientpost_init_errorpost_invocation_resultpost_invocation_error) lambda_bootstrappre_37rorrrvr}rnrqrus @@@r8 setup_oncezAwsLambdaIntegration.setup_onces #+ % %"{;7   3; & &"{:6   NR    F')?@@  NV    F)+@AA D '7'L $ R R R R R 5P  1&6&J # Q Q Q Q Q 4N  0 +2K 4 4 4 4 4 (6  $ $ $CS 4DDD  0 @(8'L $     5P  1    $#$8O  0 G $#$8N  0 F F Fr<N)F)__name__ __module__ __qualname__ identifierre staticmethodrr:r<r8r(r(sMJ////gg\gggr<r(cDtj}|ffd }|S)Nc } |z }|di} j j j j||d|d<t | j jd|d<| di}d vr d|d<t |d <d vr d |d <d vrt d |d <tr|d i} di d}||d| di d} | |d| d vr dd|d<n. ddrtddgdgi|d<||d<|S)Nextra)rRfunction_versionrJaws_request_idexecution_duration_in_millisremaining_time_in_millislambda)url log_group log_streamzcloudwatch logsrequest httpMethodmethodrqueryStringParameters query_stringrBuseridentityuserArnidsourceIp ip_addressbodydatarem)z!rawxrr)rE setdefaultrRrrJr_get_cloudwatch_logs_urllog_group_namelog_stream_namerP_get_urlrrr ) r6r% start_timeremaining_time_in_milis exec_durationrr user_inforip aws_context aws_eventconfigured_timeouts r8event_processorz6_make_request_event_processor..event_processors"-"J"J"L"L*-DD   "--(6 + <$/$D)8,9(?   h,KDD$3%5$ $  ))Ir** 9 $ $ ), 7GH !)[99 "i / /&/0G&HGN #  ! !!091E!F!FGI  # % % U((44Iz2..229==B~$$T2...z2..22:>>B~$$\2666"""+--";";}}VT** U#1e>Q>Q>Q=R5S"T"T"i r<)rutcnow)rrrrrs``` r8rHrHsF""J0:77777777r r<c |dd}|di}|dd}|dd}|r|r|rd|||Sd|jS)NpathrBHostzX-Forwarded-Protoz {}://{}{}zawslambda:///{})rPformatrR)r6rVrrBhostprotos r8rr>s 99VT " "Dii 2&&G ;;vt $ $D KK+T 2 2E 55$5!!%t444  # #G$9 : ::r<c (d}dtjd|j|j|t dz |tjt dz|}|S)z Generates a CloudWatchLogs console URL based on the context object Arguments: context {Any} -- context from lambda handler Returns: str -- AWS Console URL to logs. z%Y-%m-%dT%H:%M:%SZzhttps://console.aws.amazon.com/cloudwatch/home?region={region}#logEventViewer:group={log_group};stream={log_stream};start={start_time};end={end_time} AWS_REGION)seconds)regionrrrend_time) rrrPrrrstrftimerr)rVr formatstringrs r8rrIs(L - f{<(((*1!5!5!55?? MM/##i&:&:&::DD\RR    Jr<)*rrosrr,sentry_sdk.hubrrsentry_sdk.tracingrsentry_sdk._compatr sentry_sdk.utilsr r r r rsentry_sdk.integrationsr$sentry_sdk.integrations._wsgi_commonrsentry_sdk._typesrtypingrrrrrrrrrMrNr;r]rar(rHrrr:r<r8rs$(((((((( 88888888******&&&&&&0/////@@@@@@""""""/==========8CH-...A><<<~ooooo;oood===@;;;r<