Skip to content

Conversation

@andreiborza
Copy link
Member

Adds support for applying an application key to WASM stack frames that can be then used in the thirdPartyErrorFilterIntegration for detection of first-party code.

This changes how thirdPartyErrorFilterIntegration deals with native frames to also check for a instruction_addr for WASM-native code.

Usage:

Sentry.init({
  integrations: [
    wasmIntegration({ applicationKey: 'your-custom-application-key' }), ←───┐
    thirdPartyErrorFilterIntegration({                                      
      behaviour: 'drop-error-if-exclusively-contains-third-party-frames',   ├─ matching keys
      filterKeys: ['your-custom-application-key'] ←─────────────────────────┘
    }),
  ],
});

Closes: #18705

Adds support for applying an application key to WASM stack frames that can be
then used in the `thirdPartyErrorFilterIntegration` for detection of first-party
code.

This changes how `thirdPartyErrorFilterIntegration` deals with native frames to
also check for a `instruction_addr` for WASM-native code.

Usage:
```js
Sentry.init({
  integrations: [
    wasmIntegration({ applicationKey: 'your-custom-application-key' }), ←───┐
    thirdPartyErrorFilterIntegration({					    │
      behaviour: 'drop-error-if-exclusively-contains-third-party-frames',   ├─ matching keys
      filterKeys: ['your-custom-application-key'] ←─────────────────────────┘
    }),
  ],
});
```

Closes: #18705
@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 2026

node-overhead report 🧳

Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.

Scenario Requests/s % of Baseline Prev. Requests/s Change %
GET Baseline 9,455 - 8,971 +5%
GET With Sentry 1,807 19% 1,571 +15%
GET With Sentry (error only) 6,228 66% 5,986 +4%
POST Baseline 1,225 - 1,158 +6%
POST With Sentry 595 49% 545 +9%
POST With Sentry (error only) 1,080 88% 1,022 +6%
MYSQL Baseline 3,403 - 3,144 +8%
MYSQL With Sentry 501 15% 333 +50%
MYSQL With Sentry (error only) 2,758 81% 2,586 +7%

View base workflow run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

thirdPartyErrorFilterIntegration misidentifies first-party web workers and wasm as third-party

2 participants