Closed senky closed 3 years ago
We are facing the same issue
Friendly bump. :)
Browser extensions can be filtered directly in the UI (which also saves your event quota), so there's no need to change SDK config :)
I have it turned on, yet I still can see the errors like the one above still coming in.
@senky can you link one of the events that came through? I'll take a look.
@senky the fix is coming :)
@senky the fix is coming :) Hi, I have a question about this answer. I faced a similar problem, how can I ignore safari-extension? I want to ignore all errors caused by chrome-extension and safari-extension. For your information, 'Filter out errors known to be caused by browser extensions' is turned on.
It's an error I got.
TypeError: undefined is not an object (evaluating 'g.toString') at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:75573) at u@safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37625) at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37375) at r@safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77376) at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77472) at promiseReactionJob([native code])
can we pass in something like denyUrls: [/^chrome-extension:\/\//i, /safari-(web-)?extension:/],
?
It should already filter these events correctly through the Sentry itself when you switch browser filtering on in your project settings.
denyUrls: [/^chrome-extension:\/\//i, /safari-(web-)?extension:/] Are you saying that I just need to add this?
No, you need to do this only: https://github.com/getsentry/sentry-javascript/issues/3313#issuecomment-812478660
That setting is already done. However, I received this error.
TypeError: undefined is not an object (evaluating 'g.toString') at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:75573) at u@safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37625) at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37375) at r@safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77376) at safari-extension:(//260B6E24-727B-43D5-ACB5-55C5A7B2EE46/4245c0c1/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77472) at promiseReactionJob([native code])
We're seeing exactly the same error. The setting "Filter out errors known to be caused by browser extensions" is turned on for the project.
TypeError: undefined is not an object (evaluating 'g.toString')
at safari-extension:(//7A1512FB-B7BE-4E38-81F0-F53382838EC8/bb7332f4/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:75573)
at u@safari-extension:(//7A1512FB-B7BE-4E38-81F0-F53382838EC8/bb7332f4/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37625)
at safari-extension:(//7A1512FB-B7BE-4E38-81F0-F53382838EC8/bb7332f4/Honey.safariextension/h1-vendors-main-popover-wallet.js:147:37375)
at r@safari-extension:(//7A1512FB-B7BE-4E38-81F0-F53382838EC8/bb7332f4/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77376)
at safari-extension:(//7A1512FB-B7BE-4E38-81F0-F53382838EC8/bb7332f4/Honey.safariextension/h1-vendors-main-popover-wallet.js:51:77472)
at promiseReactionJob([native code])
I just verified it locally, and the filtering works as expected using the lastest SDK and Sentry SaaS. Please provide a link to the events that should be filtered, but were not.
Sorry, I should have shared a link already. And thanks for the quick response. I think our SDK is mostly up to date (6.4.1). Here is a link to an event. It happened 6 times on what looks like the same device:
https://sentry.io/organizations/bolinda/issues/2415511757/?project=1369486
Thanks, that's helpful. Apparently the raw stack looks slightly differently, and SDK was not able to parse it correctly, which makes the filename
and abs_path
values malformed (abs_path
is used for this filtering).
However, to tell what went wrong, we need the raw stack in the first place. And to obtain it, we need to attach it to the event.
Could you use the snippet below to configure your SDK and get back to me once you notice the same issue again? This time it should have additional data attached.
Sentry.init({
beforeSend(event, hint) {
try {
if (hint.originalException.message === `undefined is not an object (evaluating 'g.toString')`) {
event.extra = event.extra || {};
event.extra.rawStack = hint.originalException.stack;
}
} catch (e) {
return event;
}
return event;
},
});
Yes, will do. I'll get back to you when we see the event again.
Hi, @kamilogorek. We are seeing a similar error coming from a safari web extension. We are on the latest Sentry SDK and have "Filter out errors known to be caused by browser extensions" enabled. Suggestions? https://sentry.io/organizations/mentorloop/issues/2508936522/
@trmpowell please see the comment above https://github.com/getsentry/sentry-javascript/issues/3313#issuecomment-847725408
Although in your case it would be message === "undefined is not an object (evaluating 'e.findEntry')"
.
@kamilogorek, we just got this one after adding the code snippet you requested: https://sentry.io/organizations/mentorloop/issues/2580341834/
@kamilogorek, we just got a couple more if it's helpful: https://sentry.io/organizations/mentorloop/issues/2584289479 https://sentry.io/organizations/mentorloop/issues/2585402379
Thanks @trmpowell! https://github.com/getsentry/sentry-javascript/pull/3929 should fix it soon.
@kamilogorek, can you confirm which SDK version this should be fixed in? We are on 6.12.0 and just got another safari-web-extension
error:
https://sentry.io/organizations/mentorloop/issues/2672798627/
Ah, it looks like your PR went in after 6.12.0. We will upgrade. Thanks!
Package + Version
@sentry/browser
@sentry/node
raven-js
raven-node
(raven for node)Version:
Description
Chrome extensions are easy to filter out:
But when I try it with safari extensions, sentry doesn't filter it out:
I even tried with
ignoreErrors
:but to no avail. That is extremely weird, because I thought
ignoreErrors
checks for match in raw error string, which 100% containssafari-extension:
orsafari-web-extension:
. See example:Am I doing sometihing wrong? Is there a way to filter safari extensions out?