Skip to content

fix(metrics): Only start thread on demand#2727

Merged
sentrivana merged 3 commits into
masterfrom
ivana/metrics-thread-on-demand
Feb 13, 2024
Merged

fix(metrics): Only start thread on demand#2727
sentrivana merged 3 commits into
masterfrom
ivana/metrics-thread-on-demand

Conversation

@sentrivana

@sentrivana sentrivana commented Feb 12, 2024

Copy link
Copy Markdown
Contributor

The recent metrics-on-by-default switch is causing issues for folks on uWSGI in prefork mode.

In other places where we use threads we always create the thread on demand, but in the metrics code we create a thread right away (so presumably before the process is forked). This PR aligns the behavior.

Additionally, add a small check like we have in the profiler for potential race conditions when spawning the flusher thread.


General Notes

Thank you for contributing to sentry-python!

Please add tests to validate your changes, and lint your code using tox -e linters.

Running the test suite on your PR might require maintainer approval. Some tests (AWS Lambda) additionally require a maintainer to add a special label to run and will fail if the label is not present.

For maintainers

Sensitive test suites require maintainer review to ensure that tests do not compromise our secrets. This review must be repeated after any code revisions.

Before running sensitive test suites, please carefully check the PR. Then, apply the Trigger: tests using secrets label. The label will be removed after any code changes to enforce our policy requiring maintainers to review all code revisions before running sensitive tests.

@sentrivana
sentrivana marked this pull request as ready for review February 13, 2024 10:10
@sentrivana
sentrivana enabled auto-merge (squash) February 13, 2024 10:15
@sentrivana
sentrivana merged commit 26b6853 into master Feb 13, 2024
@sentrivana
sentrivana deleted the ivana/metrics-thread-on-demand branch February 13, 2024 10:20
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.

2 participants