+
    Niu              	         a  R; tr0 t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIHtHt ^ RI	H
t
 ^ RIHtHtHtHtHt ^ RIt^ RIt^ RIHtHt ^ RIHt ^ RIHtHtHtHtHtHtHtH t H!t!H"t"H#t#H$t$H%t%H&t&H't'H(t( ^ R	I)H*t* ^ R
I+H,t, ^ RI-H.t.H/t/ ^ RI0H1t1H2t2H3t3H4t4H5t5H6t6 ^ RI7H8t8H9t9 ^ RI:H;t; ^ RI<H=t= ^ RI>H?t? ^ RI@HAtA ^ RIBHCtCHDtDHEtE ^ RIFHGtG ^ RIHHItI ]'       dw   ^ RIHJtJ ^ RIHKtK ^ RIHLtL ^ RIHMtM ^ RIHNtN ^ RIHOtO ^ RIHPtP ^ RIQHRtRHStSHTtTHUtUHVtVHWtW ^ RI7HXtX ^ RIYHZtZ ^ RI[H\t\ ^ R I]H^t^ ^ R!I-H_t_H`t` ^ R"IaHbtb ^ RIHt ^ R#IHctc ]P! R$]XR%7      td]! R&4      teR'R(R)]5R*R'R+R)]5/./tf] ^ k R, R- ltg ]hti ! R. R/4      tl ! R0 R1]l4      tm ! R2 R3]l4      tn^ R4IHt ]'       d$    ! R5 R6]6]]o]J3,          4      tp ! R7 R8]6]n4      tqR# R9 ! 4       tpR: ! 4       tqR#   ]j d    ]kti Lni ; i)<    N)Mapping)datetimetimezone)import_module)TYPE_CHECKINGListDictcastoverload)PY37check_uwsgi_thread_support)MetricsBatcher)AnnotatedValue
ContextVarcapture_internal_exceptionscurrent_stacktraceenv_to_boolformat_timestampget_sdk_nameget_type_nameget_default_releasehandle_in_app	is_geventloggerget_before_send_logget_before_send_metrichas_logs_enabledhas_metrics_enabled)	serialize)trace)BaseHttpTransportmake_transport)SPANDATADEFAULT_MAX_VALUE_LENGTHDEFAULT_OPTIONSINSTRUMENTERVERSIONClientConstructor)_DEFAULT_INTEGRATIONSsetup_integrations)DedupeIntegration)SessionFlusher)Envelope)setup_continuous_profiler)has_profiling_enabledProfilesetup_profiler)EventScrubber)Monitor)Any)Callable)Optional)Sequence)Type)Union)TypeVar)EventHintSDKInfoLogMetricEventDataCategory)Integration)Scope)Session)SpotlightClient)	TransportItem
LogBatcher)DsnI)boundclient_init_debugnamezsentry.pythonversionpackageszpypi:sentry-sdkc                $    V ^8  d   QhRRRRRR/# )   argsOptional[str]kwargsr4   returnDict[str, Any] )formats   "8/tmp/pip-target-e6j6ikcs/lib/python/sentry_sdk/client.py__annotate__rZ   W   s'     K K K5 K=M K    c                  4   V '       dB   \        V ^ ,          \        \        34      '       g   V ^ ,          f   V ^ ,          pV R,          p MRp\        V 4      ^8  d   \	        R4      h\        \        4      p\        V / VB pVe   VP                  R4      f   W$R&   VP                  4        F  w  rVWS9  d   \	        RV: 24      hWcV&   K   	  VR,          f#   \        P                  P                  R4      VR&   VR,          f   \        4       VR&   VR,          f-   \        P                  P                  R	4      ;'       g    R
VR&   VR,          f8   \        \        P                  P                  R4      RR7      ;'       g    RVR&   VR,          f/   \        \        R4      '       d   \        P                  ! 4       VR&   VR,          f   \         P"                  VR&   VR,          f    \        P$                  ! 4       pWsR&   VR,          RJ d   VR,          f   RVR&   VR,          f$   \)        VR,          f   RMVR,          R7      VR&   VR,          '       d9   \        VR,          \*        4      '       g   \,        P.                  ! R4       RVR&   VR,          f8   \        \        P                  P                  R4      RR7      ;'       g    RVR&   VR,          e   \0        P2                  ! R\4        ^R7       V#   \&         d    Rp ELi ; i) r   N:   NNz+Only single positional argument is expecteddsnzUnknown option 
SENTRY_DSNreleaseenvironmentSENTRY_ENVIRONMENT
productiondebugSENTRY_DEBUGT)strictFserver_namegethostnameinstrumenterproject_rootenable_tracingtraces_sample_rate      ?event_scrubbersend_default_pii)ro   socket_optionszxIgnoring socket_options because of unexpected format. See urllib3.HTTPConnection.socket_options for the expected format.
keep_aliveSENTRY_KEEP_ALIVEzVThe `enable_tracing` parameter is deprecated. Please use `traces_sample_rate` instead.)
stacklevel)
isinstancebytesstrlen	TypeErrordictr%   getitemsosenvironr   r   hasattrsocketrh   r&   SENTRYgetcwd	Exceptionr2   listr   warningwarningswarnDeprecationWarning)rR   rT   r^   rvoptionskeyvaluerj   s   *,      rY   _get_optionsr   W   s   DGeS\22d1go#AwBx
4y1}EFF	o	BD#F#G
7;;u-5mmo
=38993	 & 
%yJJNN<05		)}+-9	- JJNN+?@PPL=	'{!"**.."@NWWRW7	- WV]%C%C"..0=	.!)00>	.!	 99;L *>	
t#+?(@(H#& 	
#,./7R@R=S 
 

Jr2B/CT$J$J G	
  $	,

':;DIRRU 	< 

'd	
 IC  	 L	 s   /L LLc                     a  ] tR t^t o RtRtR)V 3R lR lltV 3R lR ltV 3R lR lt]	V 3R	 lR
 l4       t
]	V 3R lR l4       tV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR lt]'       d   ]V 3R lR l4       t]V 3R lR l4       tV 3R lR ltV 3R lR  ltV 3R! lR" ltV 3R# lR$ ltV 3R% lR& ltV 3R' ltR(tV tR# )*
BaseClientzd
.. versionadded:: 2.0.0

The basic definition of a client that is used for sending data to Sentry.
Nc                "   < V ^8  d   QhRRRR/# )rQ   r   zOptional[Dict[str, Any]]rU   NrW   )rX   __classdict__s   "rY   rZ   BaseClient.__annotate__   s      @ @ : @d @r[   c                `    Ve   TM\         V n        R V n        R V n        R V n        R V n        R # N)r%   r   	transportmonitorlog_batchermetrics_batcher)selfr   s   &&rY   __init__BaseClient.__init__   s3    *G 	 15,037;?r[   c                &   < V ^8  d   QhRRRRRR/# )rQ   rR   r4   rT   rU   rW   )rX   r   s   "rY   rZ   r      s"      % 5 U r[   c                
    R / /# r   rW   r   rR   rT   s   &*,rY   __getstate__BaseClient.__getstate__   s    2r[   c                &   < V ^8  d   QhRRRRRR/# rQ   rR   r4   rT   rU   NrW   )rX   r   s   "rY   rZ   r      s"      % 5 T r[   c                    R # r   rW   r   s   &*,rY   __setstate__BaseClient.__setstate__       r[   c                   < V ^8  d   QhRR/# rQ   rU   rS   rW   )rX   r   s   "rY   rZ   r      s      _ r[   c                    R # r   rW   r   s   &rY   r^   BaseClient.dsn       r[   c                   < V ^8  d   QhRR/# rQ   rU   zOptional[Dsn]rW   )rX   r   s   "rY   rZ   r      s      O r[   c                    R # r   rW   r   s   &rY   
parsed_dsnBaseClient.parsed_dsn   r   r[   c                    < V ^8  d   QhRS[ /# rQ   rU   bool)rX   r   s   "rY   rZ   r      s       r[   c                    R # )FrW   r   s   &rY   should_send_default_pii"BaseClient.should_send_default_pii   s    r[   c                    < V ^8  d   QhRS[ /# r   r   )rX   r   s   "rY   rZ   r      s      4 r[   c                    R# )]
.. versionadded:: 2.0.0

Returns whether the client is active (able to send data to Sentry)
FrW   r   s   &rY   	is_activeBaseClient.is_active   s     r[   c                &   < V ^8  d   QhRRRRRR/# )rQ   rR   r4   rT   rU   rS   rW   )rX   r   s   "rY   rZ   r      s"      5 E o r[   c                    R # r   rW   r   s   &*,rY   capture_eventBaseClient.capture_event       r[   c                "   < V ^8  d   QhRRRR/# )rQ   logr>   rU   NrW   )rX   r   s   "rY   rZ   r      s       $ r[   c                    R # r   rW   )r   r   s   &&rY   _capture_logBaseClient._capture_log   r   r[   c                "   < V ^8  d   QhRRRR/# )rQ   metricr?   rU   NrW   )rX   r   s   "rY   rZ   r      s      h 4 r[   c                    R # r   rW   )r   r   s   &&rY   _capture_metricBaseClient._capture_metric   r   r[   c                &   < V ^8  d   QhRRRRRR/# r   rW   )rX   r   s   "rY   rZ   r      s"      U e  r[   c                    R # r   rW   r   s   &*,rY   capture_sessionBaseClient.capture_session   r   r[   c                $   < V ^8  d   QhRS[ RR/# rQ   name_or_classrU   Optional[Integration]rv   )rX   r   s   "rY   rZ   r          UUU9PUr[   c                    R # r   rW   r   r   s   &&rY   get_integrationBaseClient.get_integration       RUr[   c                "   < V ^8  d   QhRRRR/# rQ   r   ztype[I]rU   zOptional[I]rW   )rX   r   s   "rY   rZ   r          QQQ}Qr[   c                    R # r   rW   r   s   &&rY   r   r          NQr[   c                "   < V ^8  d   QhRRRR/# )rQ   r   zUnion[str, type[Integration]]rU   r   rW   )rX   r   s   "rY   rZ   r      s      <	 r[   c                    R # r   rW   r   s   &&rY   r   r      s     r[   c                &   < V ^8  d   QhRRRRRR/# r   rW   )rX   r   s   "rY   rZ   r      "      5 E d r[   c                    R # r   rW   r   s   &*,rY   closeBaseClient.close   r   r[   c                &   < V ^8  d   QhRRRRRR/# r   rW   )rX   r   s   "rY   rZ   r      r   r[   c                    R # r   rW   r   s   &*,rY   flushBaseClient.flush   r   r[   c                   < V ^8  d   QhRR/# )rQ   rU   r   rW   )rX   r   s   "rY   rZ   r      s      < r[   c                    V # r   rW   r   s   &rY   	__enter__BaseClient.__enter__       r[   c                *   < V ^8  d   QhRRRRRRRR/# rQ   exc_typer4   	exc_valuetbrU   NrW   )rX   r   s   "rY   rZ   r      s)       5 e  r[   c                    R # r   rW   r   r   r   r   s   &&&&rY   __exit__BaseClient.__exit__   r   r[   c                $   < V ^8  d   Qh/ R;R&   # )rQ   zOptional[SpotlightClient]	spotlightrW   )rX   r   s   "rY   rZ   r      s      +1 r[   )r   r   r   r   r   r   )__name__
__module____qualname____firstlineno____doc__r   r   r   r   propertyr^   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __annotate_func____static_attributes____classdictcell__)r   s   @rY   r   r      s      .2I@ @             	U 
U	Q 
Q 
    ]  r[   r   c                       ] tR t^tRtRtR# )NonRecordingClientz
.. versionadded:: 2.0.0

A client that does not send any events to Sentry. This is used as a fallback when the Sentry SDK is not yet initialized.
rW   N)r   r   r   r   r   r  rW   r[   rY   r  r     s     	r[   r  c                   :  a a ] tR tRt oRtV3R lV 3R lltV3R lR ltV3R lR ltV3R	 lR
 ltV3R lR lt	V3R lR lt
V3R lR lt]V3R lR l4       t]V3R lR l4       tV3R lR ltV3R lR ltR6V3R lR lltV3R lR ltV3R lR ltR7V3R lR  lltV3R! lR" ltV3R# lR$ ltV3R% lR& lt]'       d   ]V3R' lR( l4       t]V3R) lR* l4       tV3R+ lR, ltR7V3R- lR. lltR7V3R/ lR0 lltV3R1 lR2 ltV3R3 lR4 ltR5tVt V ;t!# )8_Clienti	  a1  
The client is internally responsible for capturing the events and
forwarding them to sentry through the configured transport.  It takes
the client options as keyword arguments and optionally the DSN as first
argument.

Alias of :py:class:`sentry_sdk.Client`. (Was created for better intelisense support)
c                &   < V ^8  d   QhRRRRRR/# r   rW   )rX   r   s   "rY   rZ   _Client.__annotate__  s"      e u  r[   c                b   < \         \        V `  \        V/ VB R 7       V P	                  4        R# )r   N)superr  r   get_options
_init_impl)r   rR   rT   	__class__s   &*,rY   r   _Client.__init__  s)    gt%k4.J6.J%Kr[   c                   < V ^8  d   QhRR/# )rQ   rU   r4   rW   )rX   r   s   "rY   rZ   r
    s     ) )e )r[   c                    R V P                   /# r   r   r   s   &rY   r   _Client.__getstate__  s    4<<((r[   c                "   < V ^8  d   QhRRRR/# )rQ   stater4   rU   NrW   )rX   r   s   "rY   rZ   r
    s      % D r[   c                B    VR ,          V n         V P                  4        R# )r   N)r   r  )r   r  s   &&rY   r   _Client.__setstate__  s    Y'r[   c                "   < V ^8  d   QhRRRR/# )rQ   functions_to_tracezSequence[Dict[str, str]]rU   NrW   )rX   r   s   "rY   rZ   r
    s     2 2"<2	2r[   c                   V Fe  pRpVR,          pVP                  R^4      w  rV \        V4      p\        Wv4      p\        Wv\	        V4      4       \
        P                  ! RV4       Kg  	  R#   \         d     TP                  R^4      w  rS\        T4      p\        Ys4      p	\        Y4      p\        T	P                  T,          4      p
\	        T4      pT
\        \        39   d   \        T4      p\        YT4       \        YsT	4       \
        P                  ! RT4        EK"    \         d&   p\
        P                  ! RTT4        Rp? EKM  Rp?ii ; i\         d%   p\
        P                  ! RTT4        Rp?EK~  Rp?ii ; i)zr
Instruments the functions given in the list `functions_to_trace` with the `@sentry_sdk.tracing.trace` decorator.
Nqualified_name.zEnabled tracing for %szWCan not enable tracing for '%s'. (%s) Please check your `functions_to_trace` parameter.)rsplitr   getattrsetattrr    r   rd   module_not_found_errortype__dict__staticmethodclassmethodr   r   )r   r  function
class_namefunction_qualnamemodule_namefunction_name
module_objfunction_obj	class_objfunction_typetraced_functiones   &&           rY   _setup_instrumentation_Client._setup_instrumentation  se    +HJ ()9 :):)A)A#q)I&K' +;7
&zA
53FG57HI + *  /:.@.@a.H+K!.{!;J '
 ?I#*9#DL$(););M)J$KM&+L&9O${(CC*6*GIoFJI>LL!9;LMM  NNq)   m% sC   AA..F:B'D%%E0EFEF!F"FFc                   < V ^8  d   QhRR/# )rQ   rU   NrW   )rX   r   s   "rY   rZ   r
  R  s     ~) ~)D ~)r[   c                	  a  \         P                  R 4      pR V 3R llpR%R V 3R lllp \         P                  S P                  R,          4       \	        S P                  4      S n        RS n        S P
                  '       d4   S P                  R,          '       d   \        S P
                  4      S n        ^ RIH	p V! S P                  4      S n
        S P                  eY   S P                  R	,          '       g@   R
 pRS P                  R&   VS P                  R&   VS P                  R&   VS P                  R&   \        VR7      S n        RS n        \        S P                  4      '       d   ^ RIHp V! VVR7      S n        RS n        \%        S P                  4      '       d   \'        VVR7      S n        R&pS P                  R,          V9  d   \)        RP+                  V4      4      hS P                  R,          P                  RR 4      '       dU   \,        P.                  ! R4       \0        P2                  S P                  R&   R\4        9  d   \4        P6                  ! R4       \9        S P                  R,          S P                  R,          S P                  R,          S P                  R,          S P                  R7      S n        \=        \?        S P:                  PA                  4       4      4      pV\B        R&   \,        P.                  ! R V4       \E        S P                  4      '       d    \G        S P                  4       M \K        S P                  \B        VR"7       \         P                  V4       S PM                  S P                  P                  R$. 4      4       S P                  '       gN   S P                  '       g<   \E        S P                  4      '       g!   \O        S P
                  \P        4      '       d   \S        4        R# R#   \H         d"   p	\,        P.                  ! R!T	4        Rp	?	LRp	?	ii ; i  \H         d#   p	\,        P.                  ! R#T	4        Rp	?	ELRp	?	ii ; i  \         P                  T4       i ; i)'Fc                     V ^8  d   QhRRRR/# )rQ   enveloper-   rU   NrW   )rX   s   "rY   rZ   (_Client._init_impl.<locals>.__annotate__U  s     	: 	:
 	:t 	:r[   c                    < SP                   e   SP                   P                  V 4       SP                  e   SP                  P                  V 4       R # R # r   )r   capture_enveloper   )r5  r   s   &rY   _capture_envelope-_Client._init_impl.<locals>._capture_envelopeU  s@    ~~)//9~~)//9 *r[   Nc          
      <    V ^8  d   QhR\         RRRRR\        RR/# )	rQ   reasondata_categoryr@   itemzOptional[Item]quantityrU   N)rv   int)rX   s   "rY   rZ   r6  [  s:     	 		.	 #	 		
 	r[   c                 f   < SP                   e"   SP                   P                  V VVVR7       R # R # )N)r<  r=  r>  r?  )r   record_lost_event)r<  r=  r>  r?  r   s   &&&&rY   _record_lost_event._Client._init_impl.<locals>._record_lost_event[  s7     ~~)00!"/%	 1  *r[   rd   enable_backpressure_handling)setup_spotlightr^   c                      R # )rm   rW   )_args_kwargss   *,rY   <lambda>$_Client._init_impl.<locals>.<lambda>x  s    sr[   Tro   error_samplertraces_samplerprofiles_sampler)capture_funcrG   )rO  record_lost_funcmax_request_body_sizez:Invalid value for max_request_body_size. Must be one of {}_experimentsotel_powered_performancezA[OTel] Enabling experimental OTel-powered performance monitoring.ri   zJsentry_sdk.integrations.opentelemetry.integration.OpenTelemetryIntegrationintegrationsdefault_integrationsauto_enabling_integrationsdisabled_integrations)with_defaultswith_auto_enabling_integrationsrW  r   rM   zSetting SDK name to '%s'zCan not set up profiler. (%s))sdk_inforO  z(Can not set up continuous profiler. (%s)r  )Nr]   )alwaysneversmallmedium)*_client_init_debugrz   setr   r"   r   r   r3   sentry_sdk.spotlightrF  r   r,   session_flusherr   r   sentry_sdk._log_batcherrH   r   r   r   
ValueErrorrX   r   rd   r&   OTELr)   appendr*   rT  r   r   keysSDK_INFOr/   r1   r   r.   r0  rt   r!   r   )
r   	old_debugr9  rC  rF  
sample_allrH   rQ  sdk_namer/  s
   f         rY   r  _Client._init_implR  s   &**51		: 	:	 	[	.""4<<#89+DLL9DNDL~~~<< >??#*4>>#:DL =,T\\:DN~~)$,,u2E2E:
37/00:_-1;-.3=/0#1?P#QD #D-->#-!2%7$ 
 $(D "4<<00'5!2%7($
 %K!||34<QQ PWW-  ||N+//0JERRW 0</@/@^,`01 *00d !3^,"ll+AB0401 '+ll3J&K!D $D):):)?)?)A$BCH'HVLL3X>$T\\22E"4<<0P-!)%6 ""9-##DLL$4$45I2$NO LLL$T\\22$..*;<< '(	 =+ ! ELL!@!DDE ! PLL!KQOOP ""9-so   A1Q2 AQ2 <DQ2 DQ2 3P Q2 
Q P?P:5Q2 :P??Q2 Q/Q*$Q2 *Q//Q2 2R	c                    < V ^8  d   QhRS[ /# r   r   )rX   r   s   "rY   rZ   r
    s      4 r[   c                    R# )r   TrW   r   s   &rY   r   _Client.is_active  s     r[   c                    < V ^8  d   QhRS[ /# r   r   )rX   r   s   "rY   rZ   r
    s     = = =r[   c                L    V P                   P                  R4      ;'       g    R# )z
.. versionadded:: 2.0.0

Returns whether the client should send default PII (Personally Identifiable Information) data to Sentry.
ro   F)r   rz   r   s   &rY   r   _Client.should_send_default_pii  s"     || 23<<u<r[   c                   < V ^8  d   QhRR/# r   rW   )rX   r   s   "rY   rZ   r
    s     # #_ #r[   c                (    V P                   R,          # )z%Returns the configured DSN as string.r^   r   r   s   &rY   r^   _Client.dsn  s     ||E""r[   c                   < V ^8  d   QhRR/# r   rW   )rX   r   s   "rY   rZ   r
    s     E EO Er[   c                V    V P                   '       d   V P                   P                  # R# )z)Returns the configured parsed DSN object.N)r   r   r   s   &rY   r   _Client.parsed_dsn  s!     -1NNNt~~((DDr[   c                *   < V ^8  d   QhRRRRRRRR/# )	rQ   eventr;   hintr<   scopeOptional[Scope]rU   zOptional[Event]rW   )rX   r   s   "rY   rZ   r
    s9     E EE E !	E
 
Er[   c                x   R pR pVP                  R4      f(   \        P                  ! \        P                  4      VR&   VP                  R4      R8H  pVEe   \        \        \        \        \        \        3,          ,          VP                  R. 4      4      4      pVP                  WV P                  4      pVfi   V P                  '       dU   V P                  P                  RV'       d   RMRR7       V'       d&   V P                  P                  RRV^,           R	7       R # TpV\        \        \        \        \        \        3,          ,          VP                  R. 4      4      4      ,
          p	V'       d4   V	^ 8  d-   V P                  e   V P                  P                  RRV	R	7       VP                  R
^ 4      V	,           p
V
^ 8  d	   Wz,           pVP                   ^ 8  dY   VP                  R/ 4      p\#        V\$        4      '       g   VP                  R. 4      M. p\        V4      VP                   ,           pV'       g   V P                  R,          '       d   RV9  d{   RV9  dt   RV9  dm   \'        4       ;_uu_ 4        RR\)        V P                  P                  RR4      V P                  P                  R\*        4      R7      RRRR/./VR&   R R R 4       R. F[  pVP                  V4      e   K  V P                  V,          f   K/  \        V P                  V,          4      P-                  4       W&   K]  	  VP                  R4      f:   \/        \0        4      p\3        V P4                  P7                  4       4      VR&   WR&   VP                  R4      f   RVR&   \9        VV P                  R,          V P                  R,          V P                  R,          4      pVe-   V P                  R,          pV'       d   VP;                  V4       Ve   VP<                  '       d   VP                  R. 4      p\#        V\>        4      '       d   V F  pVP                  R R 4      pVP                  R!/ 4      pV'       g   K1  VVP<                  9   g   KD  \@        PB                  V9   g   K[  \%        V\@        PB                  ,          R"VP<                  V,          /4      V\@        PB                  &   K  	  Ve"   \%        VP                  R. 4      R"V/4      VR&   Ve$   \%        VP                  RR. /4      R"V/4      VR&   Veo   \        R#\E        \        R$V4      V P                  P                  R%4      V P                  P                  R4      V P                  P                  R&4      R'7      4      pV P                  R(,          pVe   Ve   VP                  R4      R8w  d   R p\'        4       ;_uu_ 4        T! Y;'       g    / 4      pR R R 4       Vfr   \F        PH                  ! R)4       V P                  '       d   V P                  P                  R(RR7       VP                  R4      '       d   \J        PL                  ! 4        TpV P                  R*,          pVEeW   VEeR   VP                  R4      R8X  Ed;   R p\        \        \        \        \        \        3,          ,          VP                  R. 4      4      4      p\'        4       ;_uu_ 4        T! Y;'       g    / 4      pR R R 4       Vfl   \F        PH                  ! R+4       V P                  '       dC   V P                  P                  R(RR,7       V P                  P                  R(RV^,           R-7       MUV\        VP                  R. 4      4      ,
          p	V	^ 8  d-   V P                  e   V P                  P                  R(RV	R-7       TpV#   + '       g   i     EL0; i  + '       g   i     EL; i  + '       g   i     EL; i)/N	timestampr!  transactionspansevent_processorerrorr=  span)r=  r?  _dropped_spansbreadcrumbsvaluesattach_stacktrace	exception
stacktracethreadsinclude_local_variablesTmax_value_length)r  r  crashedFcurrentsdkrT  platformpythonin_app_excludein_app_includerj   rn   span_iddatarw   r;   rV   rQ  custom_repr)rQ  r  r  before_sendzbefore send dropped eventbefore_send_transactionz%before send transaction dropped event)r<  r=  )r<  r=  r?  )r`   ra   rg   dist)'rz   r   nowr   utcrw   r
   r   r	   rv   objectapply_to_eventr   r   rB  pop_n_breadcrumbs_truncatedrt   r   r   r   r$   stripry   rh  sortedrT  rg  r   scrub_event_gen_ai_original_message_countr   r#   GEN_AI_REQUEST_MESSAGESr   r   infor+   reset_last_seen)r   rz  r{  r|  previous_total_spansprevious_total_breadcrumbsis_transactionspans_beforeevent_spans_deltadropped_spansr  r  r   rZ  rn   r  r  r  	span_datar  	new_eventr  s   &&&&                   rY   _prepare_event_Client._prepare_event  s    156:"99[!)!)hll!;E+6*m;tDc6k):$;UYYwPR=STUL))%t||DF ~>>>NN44)8F}G 5  &88-*0%1A%5 9 
 E&T$sF{+,eii.DE* K +/dnn6P00%Vk 1  "'+;Q!?+!MMq '3'C$--1#iir: &k>BB  OOHb1  K%"@"@@ +
 0115(E)&,..(*<8<8H8H$=t9" 261A1A$68P2"	+ &u%t$i  /$ CCyy~%$,,s*;*G c!2399;
 C 99U#H~H'-d.?.?.D.D.F'GH^$#%L99Z ( (E*LL)*LL)*LL(	
 !\\*:;N**51!E!E!E=BYYwPR=SE%&&!D"hhy$7G $ 4I#u'K'KK$<<	IFT%h&F&FG"E$H$H$QRG	("B"BC "  ++		'2&0D(EE'N &1#1		-(B823$E-  )51*.,,*:*:;R*S%)\\%5%56H%I $ 0 0 ?	E ll=1#!		&!]2I,..'zzr:	 / 78>>>NN44%W 5  99[))%557E"&,,/H"I#/!		&!]2ItDc6k):$;UYYwPR=STUL,..3E::2F	 / CD>>>NN44,M 5  NN44,&,!-!1 5  +Sw1K-LL?t~~'ANN44,F[ 5  EM /..l /..4 /..s%   A` >``( `	`%	(`9	c                (   < V ^8  d   QhRRRRRS[ /# rQ   rz  r;   r{  r<   rU   r   )rX   r   s   "rY   rZ   r
    s"      w f  r[   c                H   VP                  R 4      pVf   R# V^ ,          p\        V^ ,          4      pV^ ,          P                  : RV: 2pV P                  R,           F>  p\	        V\
        4      '       d   Wv8X  g   Wu8X  d    R# K*  \        WG4      '       g   K=   R# 	  R# )exc_infoFr  ignore_errorsT)rz   r   r   r   rt   rv   
issubclass)r   rz  r{  r  r  error_type_nameerror_full_nameignored_errors   &&&     rY   _is_ignored_error_Client._is_ignored_error  s    88J''4%-a[%;%;_M!\\/::M --- 3}7W 8X e33 ; r[   c                ,   < V ^8  d   QhRRRRRRRS[ /# )rQ   rz  r;   r{  r<   r|  r}  rU   r   )rX   r   s   "rY   rZ   r
    s3        !	
 
r[   c                    VP                  R 4      R8H  pV'       d   R# VRJ;'       d    VP                  '       * pV'       d   R# V P                  W4      pV'       d   R# R# )r!  r  TNF)rz   _should_capturer  )r   rz  r{  r|  r  ignoring_prevents_recursionignored_by_config_options   &&&&   rY   r  _Client._should_capture  sY     6*m;&+4&7&U&U@U@U<U#&#'#9#9%#F #r[   c                (   < V ^8  d   QhRRRRRS[ /# r  r   )rX   r   s   "rY   rZ   r
    s)     - -- - 
	-r[   c                   V P                   P                  R R4      p\        V4      '       d%   \        4       ;_uu_ 4        V! W4      pRRR4       MV P                   R,          p XR8  ;'       d    \        P                  ! 4       V8  pV'       d2   V P                  '       d   V P                  P                  RR
R7       R# R#   + '       g   i     Lq; i  \
         d    \        P                  ! R4       Rp Ls\         dI    \        T4      '       d   RMRw  rg\        P                  ! RT: RT: R\        X4      : R	24       Rp Li ; i)rL  Nsample_raterm   zMThe provided error_sampler raised an error. Defaulting to sampling the event.FzThe provided  z an invalid value of zJ. The value should be a float or a bool. Defaulting to sampling the event.r  r  T)rL  returned)r  contains)r   rz   callabler   random	NameErrorr   r   rx   reprr   rB  )r   rz  r{  rL  r  not_in_sample_rate	parameterverbs   &&&     rY   _should_sample_error_Client._should_sample_error  s   
 (($?M"",..+E8 /. ,,}5K	'!,s!2!U!Uv}}+7U0 ~~~00g0VK /.  	'NN_ "' 	' M** .0 I
 NNdD$57 "'	's1    	C&C 2C C	#E>EAEEc                &   < V ^8  d   QhRRRRRR/# )rQ   sessionrC   rz  r;   rU   NrW   )rX   r   s   "rY   rZ   r
    s)     #
 #
#
 #
 
	#
r[   c                   R pR pRpVP                  R4      ;'       g    / P                  R4      pV'       dz   RpV Fq  p\        V\        4      '       d   VP                  ;'       g    / pVP                  R4      p\        V\        4      '       g   KX  VP                  R4      R J g   Ko  Rp M	  VP                  R4      p	VP
                  fw   VP                  R4      ;'       g    / P                  R	4      p
\        V
\        4      '       d   T
M/ pVP                  4        F  w  rVP                  4       R
8X  g   K  Tp M	  TP                  V'       d   RMRT	TVP                  T;'       g    T,           R7       R# )FNr  r  T	mechanismhandleduserrequestheadersz
user-agentr  )statusr  
user_agenterrors)rz   rt   r   r   r   r  ry   r{   lowerupdater  )r   r  rz  r  erroredr  
exceptionsr  r  r  r  headers_dictkvs   &&&           rY   _update_session_from_event"_Client._update_session_from_event  sG   
 
ii,2277A
G#e^44!KK--2E!IIk2	i11immI6NRW6W"G $ yy %yy+11r66yAG&0$&?&?7RL$**,779,!"J -
 	 '9T!>>W%7%78	 	 	
r[   c                *   < V ^8  d   QhRRRRRRRR/# )	rQ   rz  r;   r{  zOptional[Hint]r|  r}  rU   rS   rW   )rX   r   s   "rY   rZ   r
  1  s9     R RR R !	R
 
Rr[   c                   \        T;'       g    R4      pV P                  WV4      '       g   R# VP                  RR4      pVP                  R4      pVf%   \        P
                  ! 4       P                  ;VR&   pV P                  WV4      pVf   R# V'       d   VP                  MRpV'       d   V P                  Wq4       VP                  R4      R8H  pVP                  R4      R8H  p	V'       g"   V	'       g   V P                  W4      '       g   R# VP                  R4      p
VP                  R/ 4      P                  R	4      ;'       g    / pVP                  R
/ 4      pRVR,          R\        \        P                  ! \        P                  4      4      /pV'       d   WR	&   \!        VR7      pV'       dS   \#        V\$        4      '       d+   VP'                  VP)                  W`P*                  4      4       VP-                  V4       M+V	'       d   VP/                  V4       MVP1                  V4       T
;'       g    R F"  pVP3                  VP5                  4       4       K$  	  RpV P6                  '       d   V P6                  P9                  V4       TpV P:                  e   V P:                  P9                  V4       TpV# )a  Captures an event.

:param event: A ready-made event that can be directly sent to Sentry.

:param hint: Contains metadata about the event that can be read from `before_send`, such as the original exception object or a HTTP request object.

:param scope: An optional :py:class:`sentry_sdk.Scope` to apply to events.

:returns: An event ID. May be `None` if there is no DSN set or of if the SDK decided to discard the event for other reasons. In such situations setting `debug=True` on `init()` may help.
Nprofileevent_idr!  r  check_inattachmentscontextsr    dynamic_sampling_contextsent_at)r  rW   )ry   r  r  rz   uuiduuid4hexr  _sessionr  r  r   r   r  r   r  r-   rt   r0   add_profileto_jsonr   add_transactionadd_checkin	add_eventadd_itemto_envelope_itemr   r8  r   )r   rz  r{  r|  r  r  	event_optr  r  
is_checkinr  trace_contextr  r  r5  
attachmentreturn_values   &&&&             rY   r   _Client.capture_event1  s@     DJJB'##E77))It,99Z(+/::<+;+;;E*''U;	 %*%..t++G;"v.-?]]6*j8
 --e::hh}-!j"599'BHHb#0#4#45OQS#T  	*-'X\\(BC(

 $7GG,'7++$$W__Y%MN$$Y/  +y)%+++Jj99;< , >>>NN++H5#L>>%NN++H5#Lr[   c                "   < V ^8  d   QhRRRR/# )rQ   r   zOptional[Log]rU   NrW   )rX   r   s   "rY   rZ   r
    s     >& >& >&D >&r[   c                   \        V P                  4      '       d   Vf   R # \        P                  ! 4       p\        P                  ! 4       p\
        R,          VR,          R&   \
        R,          VR,          R&   V P                  P                  R4      pVe6   \        P                  VR,          9  d   WAR,          \        P                  &   V P                  P                  R4      pVe   RVR,          9  d   WQR,          R&   V P                  P                  R	4      pVe   R
VR,          9  d   WaR,          R
&   VP                  4       pVP                  R4      pVP                  R4      p	Ve   VP                  R4      f   WR&   V	e   VP                  R4      f   WR&   V P                  4       '       dX   VP                  eJ   R FC  w  rWP                  9   g   K  WR,          9  g   K&  VP                  V,          VR,          V
&   KE  	  V P                  P                  RR4      pV'       d;   \        P                  ! RVP                  R4       RVP                  R4       24       \        V P                  4      pVe
   V! V/ 4      pVf   R # V P                  '       d   V P                  P!                  V4       R # R # )NrM   
attributessentry.sdk.namerN   sentry.sdk.versionrg   ra   sentry.environmentr`   sentry.releasetrace_idr  rd   Fz[Sentry Logs] [severity_text] body)zuser.idid)z	user.nameusername)z
user.emailemail)r   r   
sentry_sdkget_current_scopeget_isolation_scoperh  rz   r#   SERVER_ADDRESSget_trace_contextr   _userr   rd   r   r   add)r   r   current_scopeisolation_scoperg   ra   r`   r  r	  r  log_attributeuser_attributerd   before_send_logs   &&            rY   r   _Client._capture_log  se   --"446$88:/7/?L+,2:92EL./ll&&}5"x'>'>c,FW'W9Dh556ll&&}5"';3|CT'T6A23,,""9-#33|;L#L29./%779 $$Z0##I.CGGJ$7$?&
O3779#5#=$	N ''))o.C.C.O2- #&;&;;%->>7F7L7L&8C%m42   %0LL!#''/":!;2cggfo=NO .dll;&!#r*C;  % r[   c                "   < V ^8  d   QhRRRR/# )rQ   r   zOptional[Metric]rU   NrW   )rX   r   s   "rY   rZ   r
    s     =- =-&8 =-T =-r[   c           
     z   \        V P                  4      '       d   Vf   R # \        P                  ! 4       p\        P                  ! 4       p\
        R,          VR,          R&   \
        R,          VR,          R&   V P                  P                  R4      pVe6   \        P                  VR,          9  d   WAR,          \        P                  &   V P                  P                  R4      pVe   RVR,          9  d   WQR,          R&   V P                  P                  R	4      pVe   R
VR,          9  d   WaR,          R
&   VP                  4       pVP                  R4      pVP                  R4      p	T;'       g    RVR&   V	e   WR&   V P                  4       '       dX   VP                  eJ   R FC  w  rWP                  9   g   K  WR,          9  g   K&  VP                  V,          VR,          V
&   KE  	  V P                  P                  RR4      pV'       dM   \        P                  ! RVP                  R4       RVP                  R4       RVP                  R4       24       \        V P                  4      pVe
   V! V/ 4      pVf   R # V P                  '       d   V P                  P!                  V4       R # R # )NrM   r  r  rN   r  rg   ra   r  r`   r  r	  r  z$00000000-0000-0000-0000-000000000000rd   Fz[Sentry Metrics] [r!  r  z: r   r  )r   r   r  r  r  rh  rz   r#   r  r  r   r  r   rd   r   r   r  )r   r   r  r  rg   ra   r`   r  r	  r  metric_attributer  rd   before_send_metrics   &&            rY   r   _Client._capture_metric  sg   "4<<00FN"446$88:2:62B|./5=i5H|12ll&&}5#''vl/CC<G< !8!89ll&&}5"';6,CW'W9D< !56,,""9-#36,;O#O5<< !12%779 $$Z0##I.%OO)Oz '9''))o.C.C.O50  #&;&;;(|0DD=L=R=R&>F<()9:5   %0LL$VZZ%7$86::f;M:NbQWQ[Q[\cQdPef 4DLLA)'3F>  $$V,  r[   c                "   < V ^8  d   QhRRRR/# )rQ   r  rC   rU   NrW   )rX   r   s   "rY   rZ   r
    s     6 66 
6r[   c                    VP                   '       g   \        P                  ! R 4       R# V P                  P	                  V4       R# )z3Discarded session update because of missing releaseN)r`   r   r  rb  add_session)r   r  s   &&rY   r   _Client.capture_session  s.     KKMN  ,,W5r[   c                $   < V ^8  d   QhRS[ RR/# r   r   )rX   r   s   "rY   rZ   r
    r   r[   c                    R # r   rW   r   s   &&rY   r   _Client.get_integration  r   r[   c                "   < V ^8  d   QhRRRR/# r   rW   )rX   r   s   "rY   rZ   r
    r   r[   c                    R # r   rW   r   s   &&rY   r   r)    r   r[   c                "   < V ^8  d   QhRRRR/# )rQ   r   zUnion[str, Type[Integration]]rU   r   rW   )rX   r   s   "rY   rZ   r
    s     7 767 
!7r[   c                    \        V\        4      '       d   TpM&VP                  e   VP                  pM\        R4      hV P                  P                  V4      # )zReturns the integration for this client by name or class.
If the client does not have that integration then `None` is returned.
zIntegration has no name)rt   rv   
identifierrd  rT  rz   )r   r   integration_names   && rY   r   r)    sS     mS)),%%1,77677  $$%566r[   c                &   < V ^8  d   QhRRRRRR/# rQ   timeoutzOptional[float]callbackz&Optional[Callable[[int, float], None]]rU   NrW   )rX   r   s   "rY   rZ   r
  %  s)     " """ ;" 
	"r[   c                   V P                   e   V P                  WR7       V P                  P                  4        V P                  e   V P                  P                  4        V P
                  e   V P
                  P                  4        V P                  '       d   V P                  P                  4        V P                   P                  4        RV n         R# R# )zm
Close the client and shut down the transport. Arguments have the same
semantics as :py:meth:`Client.flush`.
Nr2  r3  )r   r   rb  killr   r   r   r   r2  r3  s   &&&rY   r   _Client.close%  s     >>%JJwJ:  %%'+  %%'##/$$))+|||!!#NN!!DN &r[   c                &   < V ^8  d   QhRRRRRR/# r1  rW   )rX   r   s   "rY   rZ   r
  :  s.     E E"E ;E 
	Er[   c                `   V P                   e   Vf   V P                  R,          pV P                  P                  4        V P                  e   V P                  P                  4        V P
                  e   V P
                  P                  4        V P                   P                  WR7       R# R# )a  
Wait for the current events to be sent.

:param timeout: Wait for at most `timeout` seconds. If no `timeout` is provided, the `shutdown_timeout` option value is used.

:param callback: Is invoked with the number of pending events and the configured timeout.
Nshutdown_timeoutr5  )r   r   rb  r   r   r   r7  s   &&&rY   r   _Client.flush:  s     >>%,,'9:  &&(+  &&(##/$$**,NN   D &r[   c                   < V ^8  d   QhRR/# )rQ   rU   r  rW   )rX   r   s   "rY   rZ   r
  P  s      9 r[   c                    V # r   rW   r   s   &rY   r   _Client.__enter__P  r   r[   c                *   < V ^8  d   QhRRRRRRRR/# r   rW   )rX   r   s   "rY   rZ   r
  S  s)       5 e  r[   c                &    V P                  4        R # r   )r   r   s   &&&&rY   r   _Client.__exit__S  s    

r[   )rT  r   r   r   r   rb  r   r   r   )NN)"r   r   r   r   r   r   r   r   r0  r  r   r   r  r^   r   r  r  r  r  r  r   r   r   r   r   r   r   r   r   r   r   r  r  __classcell__)r  r   s   @@rY   r  r  	  s<     ) ) 2 2h~) ~)@ = = # # E EE EN * *- -^#
 #
JR Rh>& >&@=- =-~6 6 	U 
U	Q 
Q7 7 " "*E E,   r[   r  )r   c                       ] tR tRtRtR# )r  i`  rW   Nr   r   r   r   r  rW   r[   rY   r  r  `      r[   r  c                       ] tR tRtRtR# )Clientic  rW   NrE  rW   r[   rY   rH  rH  c  rF  r[   rH  c                      \         # r   )r   rW   r[   rY   rJ  rJ  l  s    <r[   c                      \         # r   )r  rW   r[   rY   rJ  rJ  m  s    gr[   c                8    V ^8  d   Qh/ ^ \         9   d   R;R&   # )rQ   r=   rh  __conditional_annotations__)rX   s   "rY   rZ   rZ      s    		^ ) _ 
r[   )srM  r|   r  r  r   collections.abcr   r   r   	importlibr   typingr   r   r	   r
   r   r   r  sentry_sdk._compatr   r   sentry_sdk._metrics_batcherr   sentry_sdk.utilsr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   sentry_sdk.serializerr   sentry_sdk.tracingr    sentry_sdk.transportr!   r"   sentry_sdk.constsr#   r$   r%   r&   r'   r(   sentry_sdk.integrationsr)   r*   sentry_sdk.integrations.deduper+   sentry_sdk.sessionsr,   sentry_sdk.enveloper-   'sentry_sdk.profiler.continuous_profilerr.   (sentry_sdk.profiler.transaction_profilerr/   r0   r1   sentry_sdk.scrubberr2   sentry_sdk.monitorr3   r4   r5   r6   r7   r8   r9   r:   sentry_sdk._typesr;   r<   r=   r>   r?   r@   rA   sentry_sdk.scoperB   sentry_sdk.sessionrC   ra  rD   rE   rF   rc  rH   rI   rJ   r_  rh  r   ModuleNotFoundErrorr   r   ImportErrorr   r  r  rv   r  rH  rZ   rL  s   @rY   <module>re     s   		    # ' # < <   ? 6    $ , $ B  N < . ( M 
 . &VV3&*442:$;'A 34  Ow&+Y@A K\)0O Od	 	Kj K\ !'c3h "G  (*K FK  )()s   +G 	GG