Description
It looks like sentry_sdk.init
integrations are generally attached in a global way. For example, the LoggingIntegration
wraps logging.Logger.callHandlers
[1], and ExcepthookIntegration
wraps sys.excepthook
[2].
Let's say you have multiple Sentry projects (Project A, Project B, Project C) that each correspond to one Python package (Package A, Package B, Package C). All packages could be used independently, so it makes sense to instrument all of them individually with sentry_sdk.init
. However, if Package C depends on Package A and B, then it would seem that Project C will receive all error notifications even though some of the errors might actually be caused by Packages A and B. Ideally, I'd like to be able to do a scoped sentry_sdk.init
on the three packages so that errors from different packages are routed to their corresponding Sentry project, regardless of their interdependencies.
Is such a use case supported, or are there any plans to support this use case in the future?
Potentially relevant issue: #198.
[1] https://github.com/getsentry/sentry-python/blob/master/sentry_sdk/integrations/logging.py#L72
[2] https://github.com/getsentry/sentry-python/blob/master/sentry_sdk/integrations/excepthook.py#L46