getsentry / getsentry/sentry-javascript

No isolation scope forking for async background tasks

Open
#19,596 2 comments 0 reactions 0 assignees View on GitHub
Bug Nest.js
Dominant language
TypeScript
Stars
8.7k
Forks
1.8k
Avg merge
1d 17h
Merged PRs (30d)
515

Description

We currently do not fork isolation scopes for async background tasks in nestjs. That's why any Sentry data generated during these tasks get written to the default isolation scope, which then gets forked during http requests. Therefore data generated during async activity leaks into http requests (see for instance [leaking breadcrumbs]()). We need to ensure that we properly isolate async background tasks.

Solution Brainstorm: We could try to find a single entrypoint but it would be good to write new instrumentations for the most important use cases here anyway (to also capture errors and do some tracing). For `@nestjs/event-emitter` we have instrumentation already, so we just need to add an isolation scope for other setups this is lacking (tracked in [JS-1895](https://linear.app/getsentry/issue/JS-1895/add-instrumentations-for-async-background-task-apis)).

[Reproduction](https://github.com/getsentry/repro/pull/23)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.