diff --git a/packages/browser/src/eventbuilder.ts b/packages/browser/src/eventbuilder.ts index c3734c9c39e6..2a94476f2155 100644 --- a/packages/browser/src/eventbuilder.ts +++ b/packages/browser/src/eventbuilder.ts @@ -7,6 +7,7 @@ import { isError, isErrorEvent, isEvent, + isInstanceOf, isPlainObject, SyncPromise, } from '@sentry/utils'; @@ -73,7 +74,10 @@ export function eventFromUnknownInput( event = eventFromStacktrace(computeStackTrace(exception as Error)); return event; } - if (isDOMError(exception as DOMError) || isDOMException(exception as DOMException)) { + if ( + isDOMError(exception as DOMError) || + (isDOMException(exception as DOMException) && !isInstanceOf(exception, Error)) + ) { // If it is a DOMError or DOMException (which are legacy APIs, but still supported in some browsers) // then we just extract the name, code, and message, as they don't provide anything else // https://developer.mozilla.org/en-US/docs/Web/API/DOMError