44< html >
55 < head >
66 < meta charset ="utf-8 " />
7- < title > sentry_sdk.client — sentry-python 0.19.1 documentation</ title >
7+ < title > sentry_sdk.client — sentry-python 0.19.2 documentation</ title >
88 < link rel ="stylesheet " href ="../../_static/alabaster.css " type ="text/css " />
99 < link rel ="stylesheet " href ="../../_static/pygments.css " type ="text/css " />
1010 < script id ="documentation_options " data-url_root ="../../ " src ="../../_static/documentation_options.js "> </ script >
@@ -45,6 +45,8 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
4545 < span class ="n "> disable_capture_event</ span > < span class ="p "> ,</ span >
4646 < span class ="n "> format_timestamp</ span > < span class ="p "> ,</ span >
4747 < span class ="n "> get_type_name</ span > < span class ="p "> ,</ span >
48+ < span class ="n "> get_default_release</ span > < span class ="p "> ,</ span >
49+ < span class ="n "> get_default_environment</ span > < span class ="p "> ,</ span >
4850 < span class ="n "> handle_in_app</ span > < span class ="p "> ,</ span >
4951 < span class ="n "> logger</ span > < span class ="p "> ,</ span >
5052< span class ="p "> )</ span >
@@ -54,7 +56,7 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
5456< span class ="kn "> from</ span > < span class ="nn "> sentry_sdk.integrations</ span > < span class ="kn "> import</ span > < span class ="n "> setup_integrations</ span >
5557< span class ="kn "> from</ span > < span class ="nn "> sentry_sdk.utils</ span > < span class ="kn "> import</ span > < span class ="n "> ContextVar</ span >
5658< span class ="kn "> from</ span > < span class ="nn "> sentry_sdk.sessions</ span > < span class ="kn "> import</ span > < span class ="n "> SessionFlusher</ span >
57- < span class ="kn "> from</ span > < span class ="nn "> sentry_sdk.envelope</ span > < span class ="kn "> import</ span > < span class ="n "> Envelope</ span > < span class =" p " > , </ span > < span class =" n " > Item </ span > < span class =" p " > , </ span > < span class =" n " > PayloadRef </ span >
59+ < span class ="kn "> from</ span > < span class ="nn "> sentry_sdk.envelope</ span > < span class ="kn "> import</ span > < span class ="n "> Envelope</ span >
5860
5961< span class ="kn "> from</ span > < span class ="nn "> sentry_sdk._types</ span > < span class ="kn "> import</ span > < span class ="n "> MYPY</ span >
6062
@@ -95,10 +97,10 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
9597 < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "dsn"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> os</ span > < span class ="o "> .</ span > < span class ="n "> environ</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "SENTRY_DSN"</ span > < span class ="p "> )</ span >
9698
9799 < span class ="k "> if</ span > < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "release"</ span > < span class ="p "> ]</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
98- < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "release"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> os </ span > < span class ="o " > . </ span > < span class =" n " > environ </ span > < span class =" o " > . </ span > < span class =" n " > get </ span > < span class =" p "> (</ span > < span class =" s2 " > "SENTRY_RELEASE" </ span > < span class =" p " > )</ span >
100+ < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "release"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> get_default_release </ span > < span class ="p "> ()</ span >
99101
100102 < span class ="k "> if</ span > < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "environment"</ span > < span class ="p "> ]</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
101- < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "environment"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> os </ span > < span class ="o " > . </ span > < span class ="n "> environ </ span > < span class ="o " > . </ span > < span class =" n " > get </ span > < span class =" p "> ( </ span > < span class ="s2 "> "SENTRY_ENVIRONMENT "</ span > < span class ="p "> )</ span >
103+ < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "environment"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> get_default_environment </ span > < span class ="p " > ( </ span > < span class ="n "> rv </ span > < span class ="p "> [ </ span > < span class ="s2 "> "release "</ span > < span class ="p "> ] )</ span >
102104
103105 < span class ="k "> if</ span > < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "server_name"</ span > < span class ="p "> ]</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="ow "> and</ span > < span class ="nb "> hasattr</ span > < span class ="p "> (</ span > < span class ="n "> socket</ span > < span class ="p "> ,</ span > < span class ="s2 "> "gethostname"</ span > < span class ="p "> ):</ span >
104106 < span class ="n "> rv</ span > < span class ="p "> [</ span > < span class ="s2 "> "server_name"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> socket</ span > < span class ="o "> .</ span > < span class ="n "> gethostname</ span > < span class ="p "> ()</ span >
@@ -177,16 +179,14 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
177179 < span class ="k "> def</ span > < span class ="nf "> _prepare_event</ span > < span class ="p "> (</ span >
178180 < span class ="bp "> self</ span > < span class ="p "> ,</ span >
179181 < span class ="n "> event</ span > < span class ="p "> ,</ span > < span class ="c1 "> # type: Event</ span >
180- < span class ="n "> hint</ span > < span class ="p "> ,</ span > < span class ="c1 "> # type: Optional[ Hint] </ span >
182+ < span class ="n "> hint</ span > < span class ="p "> ,</ span > < span class ="c1 "> # type: Hint</ span >
181183 < span class ="n "> scope</ span > < span class ="p "> ,</ span > < span class ="c1 "> # type: Optional[Scope]</ span >
182184 < span class ="p "> ):</ span >
183185 < span class ="c1 "> # type: (...) -> Optional[Event]</ span >
184186
185187 < span class ="k "> if</ span > < span class ="n "> event</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "timestamp"</ span > < span class ="p "> )</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
186188 < span class ="n "> event</ span > < span class ="p "> [</ span > < span class ="s2 "> "timestamp"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> datetime</ span > < span class ="o "> .</ span > < span class ="n "> utcnow</ span > < span class ="p "> ()</ span >
187189
188- < span class ="n "> hint</ span > < span class ="o "> =</ span > < span class ="nb "> dict</ span > < span class ="p "> (</ span > < span class ="n "> hint</ span > < span class ="ow "> or</ span > < span class ="p "> ())</ span > < span class ="c1 "> # type: Hint</ span >
189-
190190 < span class ="k "> if</ span > < span class ="n "> scope</ span > < span class ="ow "> is</ span > < span class ="ow "> not</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
191191 < span class ="n "> event_</ span > < span class ="o "> =</ span > < span class ="n "> scope</ span > < span class ="o "> .</ span > < span class ="n "> apply_to_event</ span > < span class ="p "> (</ span > < span class ="n "> event</ span > < span class ="p "> ,</ span > < span class ="n "> hint</ span > < span class ="p "> )</ span >
192192 < span class ="k "> if</ span > < span class ="n "> event_</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
@@ -353,10 +353,13 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
353353 < span class ="k "> if</ span > < span class ="n "> hint</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
354354 < span class ="n "> hint</ span > < span class ="o "> =</ span > < span class ="p "> {}</ span >
355355 < span class ="n "> event_id</ span > < span class ="o "> =</ span > < span class ="n "> event</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "event_id"</ span > < span class ="p "> )</ span >
356+ < span class ="n "> hint</ span > < span class ="o "> =</ span > < span class ="nb "> dict</ span > < span class ="p "> (</ span > < span class ="n "> hint</ span > < span class ="ow "> or</ span > < span class ="p "> ())</ span > < span class ="c1 "> # type: Hint</ span >
357+
356358 < span class ="k "> if</ span > < span class ="n "> event_id</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
357359 < span class ="n "> event</ span > < span class ="p "> [</ span > < span class ="s2 "> "event_id"</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> event_id</ span > < span class ="o "> =</ span > < span class ="n "> uuid</ span > < span class ="o "> .</ span > < span class ="n "> uuid4</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="n "> hex</ span >
358360 < span class ="k "> if</ span > < span class ="ow "> not</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _should_capture</ span > < span class ="p "> (</ span > < span class ="n "> event</ span > < span class ="p "> ,</ span > < span class ="n "> hint</ span > < span class ="p "> ,</ span > < span class ="n "> scope</ span > < span class ="p "> ):</ span >
359361 < span class ="k "> return</ span > < span class ="kc "> None</ span >
362+
360363 < span class ="n "> event_opt</ span > < span class ="o "> =</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _prepare_event</ span > < span class ="p "> (</ span > < span class ="n "> event</ span > < span class ="p "> ,</ span > < span class ="n "> hint</ span > < span class ="p "> ,</ span > < span class ="n "> scope</ span > < span class ="p "> )</ span >
361364 < span class ="k "> if</ span > < span class ="n "> event_opt</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
362365 < span class ="k "> return</ span > < span class ="kc "> None</ span >
@@ -367,19 +370,27 @@ <h1>Source code for sentry_sdk.client</h1><div class="highlight"><pre>
367370 < span class ="k "> if</ span > < span class ="n "> session</ span > < span class ="p "> :</ span >
368371 < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _update_session_from_event</ span > < span class ="p "> (</ span > < span class ="n "> session</ span > < span class ="p "> ,</ span > < span class ="n "> event</ span > < span class ="p "> )</ span >
369372
370- < span class ="k "> if</ span > < span class ="n "> event_opt</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "type"</ span > < span class ="p "> )</ span > < span class ="o "> ==</ span > < span class ="s2 "> "transaction"</ span > < span class ="p "> :</ span >
371- < span class ="c1 "> # Transactions should go to the /envelope/ endpoint.</ span >
372- < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> transport</ span > < span class ="o "> .</ span > < span class ="n "> capture_envelope</ span > < span class ="p "> (</ span >
373- < span class ="n "> Envelope</ span > < span class ="p "> (</ span >
374- < span class ="n "> headers</ span > < span class ="o "> =</ span > < span class ="p "> {</ span >
375- < span class ="s2 "> "event_id"</ span > < span class ="p "> :</ span > < span class ="n "> event_opt</ span > < span class ="p "> [</ span > < span class ="s2 "> "event_id"</ span > < span class ="p "> ],</ span >
376- < span class ="s2 "> "sent_at"</ span > < span class ="p "> :</ span > < span class ="n "> format_timestamp</ span > < span class ="p "> (</ span > < span class ="n "> datetime</ span > < span class ="o "> .</ span > < span class ="n "> utcnow</ span > < span class ="p "> ()),</ span >
377- < span class ="p "> },</ span >
378- < span class ="n "> items</ span > < span class ="o "> =</ span > < span class ="p "> [</ span >
379- < span class ="n "> Item</ span > < span class ="p "> (</ span > < span class ="n "> payload</ span > < span class ="o "> =</ span > < span class ="n "> PayloadRef</ span > < span class ="p "> (</ span > < span class ="n "> json</ span > < span class ="o "> =</ span > < span class ="n "> event_opt</ span > < span class ="p "> ),</ span > < span class ="nb "> type</ span > < span class ="o "> =</ span > < span class ="s2 "> "transaction"</ span > < span class ="p "> ),</ span >
380- < span class ="p "> ],</ span >
381- < span class ="p "> )</ span >
373+ < span class ="n "> attachments</ span > < span class ="o "> =</ span > < span class ="n "> hint</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "attachments"</ span > < span class ="p "> )</ span >
374+ < span class ="n "> is_transaction</ span > < span class ="o "> =</ span > < span class ="n "> event_opt</ span > < span class ="o "> .</ span > < span class ="n "> get</ span > < span class ="p "> (</ span > < span class ="s2 "> "type"</ span > < span class ="p "> )</ span > < span class ="o "> ==</ span > < span class ="s2 "> "transaction"</ span >
375+
376+ < span class ="k "> if</ span > < span class ="n "> is_transaction</ span > < span class ="ow "> or</ span > < span class ="n "> attachments</ span > < span class ="p "> :</ span >
377+ < span class ="c1 "> # Transactions or events with attachments should go to the</ span >
378+ < span class ="c1 "> # /envelope/ endpoint.</ span >
379+ < span class ="n "> envelope</ span > < span class ="o "> =</ span > < span class ="n "> Envelope</ span > < span class ="p "> (</ span >
380+ < span class ="n "> headers</ span > < span class ="o "> =</ span > < span class ="p "> {</ span >
381+ < span class ="s2 "> "event_id"</ span > < span class ="p "> :</ span > < span class ="n "> event_opt</ span > < span class ="p "> [</ span > < span class ="s2 "> "event_id"</ span > < span class ="p "> ],</ span >
382+ < span class ="s2 "> "sent_at"</ span > < span class ="p "> :</ span > < span class ="n "> format_timestamp</ span > < span class ="p "> (</ span > < span class ="n "> datetime</ span > < span class ="o "> .</ span > < span class ="n "> utcnow</ span > < span class ="p "> ()),</ span >
383+ < span class ="p "> }</ span >
382384 < span class ="p "> )</ span >
385+
386+ < span class ="k "> if</ span > < span class ="n "> is_transaction</ span > < span class ="p "> :</ span >
387+ < span class ="n "> envelope</ span > < span class ="o "> .</ span > < span class ="n "> add_transaction</ span > < span class ="p "> (</ span > < span class ="n "> event_opt</ span > < span class ="p "> )</ span >
388+ < span class ="k "> else</ span > < span class ="p "> :</ span >
389+ < span class ="n "> envelope</ span > < span class ="o "> .</ span > < span class ="n "> add_event</ span > < span class ="p "> (</ span > < span class ="n "> event_opt</ span > < span class ="p "> )</ span >
390+
391+ < span class ="k "> for</ span > < span class ="n "> attachment</ span > < span class ="ow "> in</ span > < span class ="n "> attachments</ span > < span class ="ow "> or</ span > < span class ="p "> ():</ span >
392+ < span class ="n "> envelope</ span > < span class ="o "> .</ span > < span class ="n "> add_item</ span > < span class ="p "> (</ span > < span class ="n "> attachment</ span > < span class ="o "> .</ span > < span class ="n "> to_envelope_item</ span > < span class ="p "> ())</ span >
393+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> transport</ span > < span class ="o "> .</ span > < span class ="n "> capture_envelope</ span > < span class ="p "> (</ span > < span class ="n "> envelope</ span > < span class ="p "> )</ span >
383394 < span class ="k "> else</ span > < span class ="p "> :</ span >
384395 < span class ="c1 "> # All other events go to the /store/ endpoint.</ span >
385396 < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> transport</ span > < span class ="o "> .</ span > < span class ="n "> capture_event</ span > < span class ="p "> (</ span > < span class ="n "> event_opt</ span > < span class ="p "> )</ span >
0 commit comments