Features
- Add session replay id to Sentry Logs (#4740)
- Add support for continuous profiling of JVM applications on macOS and Linux (#4556)
- Sentry continuous profiling on the JVM is using async-profiler under the hood.
- By default this feature is disabled. Set a profile sample rate and chose a lifecycle (see below) to enable it.
- Add the
sentry-async-profiler
dependency to your project - Set a sample rate for profiles, e.g.
1.0
to send all of them. You may useoptions.setProfileSessionSampleRate(1.0)
in code orprofile-session-sample-rate=1.0
insentry.properties
- Set a profile lifecycle via
options.setProfileLifecycle(ProfileLifecycle.TRACE)
in code orprofile-lifecycle=TRACE
insentry.properties
- By default the lifecycle is set to
MANUAL
, meaning you have to explicitly callSentry.startProfiler()
andSentry.stopProfiler()
- You may change it to
TRACE
which will create a profile for each transaction
- By default the lifecycle is set to
- To automatically upload Profiles for each transaction in a Spring Boot application
- set
sentry.profile-session-sample-rate=1.0
andsentry.profile-lifecycle=TRACE
inapplication.properties
- or set
sentry.profile-session-sample-rate: 1.0
andsentry.profile-lifecycle: TRACE
inapplication.yml
- set
- Profiling can also be combined with our OpenTelemetry integration
Fixes
- Start performance collection on AppStart continuous profiling (#4752)
- Preserve modifiers in
SentryTraced
(#4757)