@sentry/react-native
Advanced tools
Changelog
6.0.0
This is a new major version 6.0.0 of the Sentry React Native SDK. To upgrade from the SDK version 5, please follow our migration guide.
React Native Tracing options were moved to the root options
import * as Sentry from '@sentry/react-native';
Sentry.init({
tracesSampleRate: 1.0,
enableAppStartTracking: true, // default true
enableNativeFramesTracking: true, // default true
enableStallTracking: true, // default true
enableUserInteractionTracing: true, // default false
integrations: [
Sentry.reactNativeTracingIntegration({
beforeStartSpan: (startSpanOptions) => {
startSpanOptions.name = 'New Name';
return startSpanOptions;
},
}),
Sentry.appStartIntegration({
standalone: false, // default false
}),
],
});
New React Navigation Integration interface (#4003)
import * as Sentry from '@sentry/react-native';
import { NavigationContainer } from '@react-navigation/native';
const reactNavigationIntegration = Sentry.reactNavigationIntegration();
Sentry.init({
tracesSampleRate: 1.0,
integrations: [reactNavigationIntegration],
});
function RootComponent() {
const navigation = React.useRef(null);
return <NavigationContainer ref={navigation}
onReady={() => {
reactNavigationIntegration.registerNavigationContainer(navigation);
}}>
</NavigationContainer>;
}
Removed beforeNavigate
use beforeStartSpan
instead (#3998)
beforeStartSpan
is executed before the span start, compared to beforeNavigate
which was executed before the navigation ended (after the span was created)Add sentry.origin
to SDK spans to indicated if spans are created by a part of the SDK or manually (#4066)
Xcode Debug Files upload completes in foreground by default (#4090)
Set parentSpanIsAlwaysRootSpan
to true
to make parent of network requests predictable (#4084)
Remove deprecated enableSpotlight
and spotlightSidecarUrl
(#4086)
tracePropagationTargets
defaults to all targets on mobile and same origin on the web (#4083)
Move _experiments.profilesSampleRate
to profilesSampleRate
root options object #3851)
Native Frames uses spanId
to attach frames replacing traceId
(#4030)
Removed deprecated ReactNativeTracing option idleTimeout
use idleTimeoutMs
instead (#3998)
Removed deprecated ReactNativeTracing option maxTransactionDuration
use finalTimeoutMs
instead (#3998)
New Native Frames Integration (#3996)
New Stall Tracking Integration (#3997)
New User Interaction Tracing Integration (#3999)
New App Start Integration (#3852)
New React Native Navigation Integration interface (#4003)
import * as Sentry from '@sentry/react-native';
import { Navigation } from 'react-native-navigation';
Sentry.init({
tracesSampleRate: 1.0,
integrations: [
Sentry.reactNativeNavigationIntegration({ navigation: Navigation })
],
});
setContext
ensures only values convertible to NativeMap are passed (#4168)setExtra
ensures only stringified values are passed (#4168)setContext('key', null)
removes the key value also from platform context (#4168)Changelog
6.0.0-rc.0
This is a release candidate version of the next major version of the Sentry React Native SDK 6.0.0. This version includes all the changes from the previous 6.0.0-beta.0 and the latest 5.33.1 version.
SENTRY_FORCE_FOREGROUND=false
for background uploadChangelog
5.33.1
This is re-release of 5.33.0 with no changes to ensure that 5.33.1 is tagged as latest release on npmjs.com
Changelog
5.33.0
Add an option to disable native (iOS and Android) profiling for the HermesProfiling
integration (#4094)
To disable native profilers add the hermesProfilingIntegration
.
import * as Sentry from '@sentry/react-native';
Sentry.init({
integrations: [
Sentry.hermesProfilingIntegration({ platformProfilers: false }),
],
});
Changelog
5.24.2
Add an option to disable native (iOS and Android) profiling for the HermesProfiling
integration (#4094)
To disable native profilers add the hermesProfilingIntegration
.
import * as Sentry from '@sentry/react-native';
Sentry.init({
integrations: [
Sentry.hermesProfilingIntegration({ platformProfilers: false }),
],
});