Skip to content

patch#2735

Open
Ayush-developer wants to merge 1 commit intogetsentry:masterfrom
Ayush-developer:concurrent_ruby_handling
Open

patch#2735
Ayush-developer wants to merge 1 commit intogetsentry:masterfrom
Ayush-developer:concurrent_ruby_handling

Conversation

@Ayush-developer
Copy link
Copy Markdown

@Ayush-developer Ayush-developer commented Oct 5, 2025

Thanks for your Pull Request 🎉

Please keep these instructions in mind so we can review it more efficiently:

Other Notes

Description

Describe your changes:

This introduces a custom Sentry integration for the concurrent-ruby library, ensuring proper hub and span propagation across background threads created by Concurrent::Promises.future and Concurrent::Promises::Promise.

Key changes:

Added a Sentry::ConcurrentRuby module that patches:

Concurrent::Promises.future

Concurrent::Promises::Future#on_resolution

Automatically propagates the current Sentry hub and active span to background threads.

Wraps each future/promise execution inside Sentry.with_child_span, creating a child span for async tasks.

Sets the child span as the current span for that thread to preserve the correct trace hierarchy.

Removes the need for manually calling Sentry.with_child_span inside individual futures.

Result:

image

Loading
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.

1 participant