From 65fec0866e25ba4d758ac8a84681c21b26d6163b Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Thu, 27 Oct 2022 13:47:38 +0200 Subject: [PATCH 1/4] fix(event): Message event contains stacktrace if `attachStacktrace` option is set --- src/js/client.ts | 1 + src/js/index.ts | 2 +- src/js/sdk.tsx | 19 ++++++++++++++++++- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/js/client.ts b/src/js/client.ts index d5e4c6093f..da7457c265 100644 --- a/src/js/client.ts +++ b/src/js/client.ts @@ -72,6 +72,7 @@ export class ReactNativeClient extends BaseClient { stackParser: options.stackParser || defaultStackParser, integrations: [], _metadata: options._metadata, + attachStacktrace: options.attachStacktrace, }); void this._initNativeSdk(); diff --git a/src/js/index.ts b/src/js/index.ts index 3ac0c4db08..902162aeaf 100644 --- a/src/js/index.ts +++ b/src/js/index.ts @@ -16,7 +16,6 @@ export { addBreadcrumb, captureException, captureEvent, - captureMessage, getHubFromCarrier, getCurrentHub, Hub, @@ -66,6 +65,7 @@ export { captureUserFeedback, withScope, configureScope, + captureMessage, } from './sdk'; export { TouchEventBoundary, withTouchEventBoundary } from './touchevents'; diff --git a/src/js/sdk.tsx b/src/js/sdk.tsx index 4f7c8ab273..99273c5f0e 100644 --- a/src/js/sdk.tsx +++ b/src/js/sdk.tsx @@ -5,7 +5,7 @@ import { defaultStackParser, getCurrentHub, } from '@sentry/react'; -import { Integration, Scope, StackFrame, UserFeedback } from '@sentry/types'; +import { Integration, Scope, SeverityLevel, StackFrame, UserFeedback } from '@sentry/types'; import { logger, stackParserFromStackParserOptions } from '@sentry/utils'; import * as React from 'react'; @@ -276,3 +276,20 @@ export function withScope(callback: (scope: Scope) => void): ReturnType()?.captureMessage( + message, + level, + { + syntheticException: new Error(message), + }, + ); +} From 8a412f4db3120f8cd88466e6fdf0182d6a38890a Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Thu, 27 Oct 2022 14:23:21 +0200 Subject: [PATCH 2/4] Fix the captureMessage function signature to match the original --- src/js/sdk.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/js/sdk.tsx b/src/js/sdk.tsx index 99273c5f0e..b15e89cd22 100644 --- a/src/js/sdk.tsx +++ b/src/js/sdk.tsx @@ -284,8 +284,8 @@ export function withScope(callback: (scope: Scope) => void): ReturnType()?.captureMessage( +export function captureMessage(message: string, level?: SeverityLevel): string | undefined { + return getCurrentHub().getClient()?.captureMessage( message, level, { From da65777952de09428a0c318d714844d5e68a0000 Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Fri, 28 Oct 2022 10:42:48 +0200 Subject: [PATCH 3/4] Add changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index df8f775229..a7a1057759 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ ## Unreleased +## Fixes + +- Message event can have attached stacktrace ([#2577](https://github.com/getsentry/sentry-react-native/pull/2577)) + ### Dependencies - Bump Android SDK from v6.5.0 to v6.6.0 ([#2572](https://github.com/getsentry/sentry-react-native/pull/2572)) From 190d3a1407743b395014949c075e9f954245d6da Mon Sep 17 00:00:00 2001 From: Krystof Woldrich Date: Mon, 31 Oct 2022 13:21:19 +0100 Subject: [PATCH 4/4] Revert "fix(event): Message event contains stacktrace if `attachStacktrace` option is set" This reverts commit 65fec0866e25ba4d758ac8a84681c21b26d6163b. --- src/js/index.ts | 2 +- src/js/sdk.tsx | 19 +------------------ 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/src/js/index.ts b/src/js/index.ts index 902162aeaf..3ac0c4db08 100644 --- a/src/js/index.ts +++ b/src/js/index.ts @@ -16,6 +16,7 @@ export { addBreadcrumb, captureException, captureEvent, + captureMessage, getHubFromCarrier, getCurrentHub, Hub, @@ -65,7 +66,6 @@ export { captureUserFeedback, withScope, configureScope, - captureMessage, } from './sdk'; export { TouchEventBoundary, withTouchEventBoundary } from './touchevents'; diff --git a/src/js/sdk.tsx b/src/js/sdk.tsx index b15e89cd22..4f7c8ab273 100644 --- a/src/js/sdk.tsx +++ b/src/js/sdk.tsx @@ -5,7 +5,7 @@ import { defaultStackParser, getCurrentHub, } from '@sentry/react'; -import { Integration, Scope, SeverityLevel, StackFrame, UserFeedback } from '@sentry/types'; +import { Integration, Scope, StackFrame, UserFeedback } from '@sentry/types'; import { logger, stackParserFromStackParserOptions } from '@sentry/utils'; import * as React from 'react'; @@ -276,20 +276,3 @@ export function withScope(callback: (scope: Scope) => void): ReturnType()?.captureMessage( - message, - level, - { - syntheticException: new Error(message), - }, - ); -}