-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Add pprof extension #7073
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add pprof extension #7073
Conversation
Signed-off-by: Denys Vitali <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Who is the audience for this? A regular user will not be profiling jaeger code, only someone who wants to make changes and already has access to source code and can build jaeger. I don't mind adding the extension to the binary, but I don't like enabling it automatically in all-in-one, potentially causing port conflicts that the user has no way of turning off. I would only add it to config.yaml which is not shipped as part of the jaeger binary.
Yes, good point, no need for this to be enabled by default. My use case (today) was to find out why Jaeger takes 30m to start when Badger is enabled - and the only way for me to debug this is to enable pprof. |
let's move the config change from all-in-one to cmd/jaeger/config.yaml |
Signed-off-by: Denys Vitali <[email protected]>
Done. Wdyt? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #7073 +/- ##
==========================================
+ Coverage 96.01% 96.02% +0.01%
==========================================
Files 355 355
Lines 20993 20995 +2
==========================================
+ Hits 20156 20161 +5
+ Misses 630 628 -2
+ Partials 207 206 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
## Which problem is this PR solving? Currently it's not possible to profile Jaeger. This makes it hard to find bugs, memory leaks or problems in the running application. It looks like this was somehow supported in Jaeger v1 (I found references there) and was mentioned in `config.yaml` - but it didn't work out of the box because the extension was missing. ## Description of the changes This PR adds the [pprof](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/pprofextension/README.md) ## How was this change tested? Using `all-in-one.yaml` and connecting to `localhost:17777` ## Checklist - [X] I have read https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md - [X] I have signed all commits - [ ] I have added unit tests for the new functionality - [X] I have run lint and test steps successfully - for `jaeger`: `make lint test` - for `jaeger-ui`: `npm run lint` and `npm run test` --------- Signed-off-by: Denys Vitali <[email protected]>
## Which problem is this PR solving? Currently it's not possible to profile Jaeger. This makes it hard to find bugs, memory leaks or problems in the running application. It looks like this was somehow supported in Jaeger v1 (I found references there) and was mentioned in `config.yaml` - but it didn't work out of the box because the extension was missing. ## Description of the changes This PR adds the [pprof](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/pprofextension/README.md) ## How was this change tested? Using `all-in-one.yaml` and connecting to `localhost:17777` ## Checklist - [X] I have read https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md - [X] I have signed all commits - [ ] I have added unit tests for the new functionality - [X] I have run lint and test steps successfully - for `jaeger`: `make lint test` - for `jaeger-ui`: `npm run lint` and `npm run test` --------- Signed-off-by: Denys Vitali <[email protected]> Signed-off-by: amol-verma-allen <[email protected]>
Which problem is this PR solving?
Currently it's not possible to profile Jaeger. This makes it hard to find bugs, memory leaks or problems in the running application. It looks like this was somehow supported in Jaeger v1 (I found references there) and was mentioned in
config.yaml
- but it didn't work out of the box because the extension was missing.Description of the changes
This PR adds the pprof
How was this change tested?
Using
all-in-one.yaml
and connecting tolocalhost:17777
Checklist
jaeger
:make lint test
jaeger-ui
:npm run lint
andnpm run test