Skip to content
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

No way of profiling jaeger-collector #1315

Closed
konradgaluszka opened this issue Feb 6, 2019 · 5 comments
Closed

No way of profiling jaeger-collector #1315

konradgaluszka opened this issue Feb 6, 2019 · 5 comments
Assignees

Comments

@konradgaluszka
Copy link
Contributor

konradgaluszka commented Feb 6, 2019

Hi,
I was analyzing performance of jaeger-collector to see what objects are allocated and what are the method times after running jaeger under high load.

I've noticed there is no pprof endpoints registered, so I've had to add it and build image myself.

Are there any methods (other than pprof) that you use for profiling?

I can create PR with my changes.

Something similar to this:

r := mux.NewRouter()
r.HandleFunc("/debug/pprof/", pprof.Index)
r.HandleFunc("/debug/pprof/cmdline", pprof.Cmdline)
r.HandleFunc("/debug/pprof/profile", pprof.Profile)
r.HandleFunc("/debug/pprof/symbol", pprof.Symbol)
r.HandleFunc("/debug/pprof/trace", pprof.Trace)
r.Handle("/debug/pprof/goroutine", pprof.Handler("goroutine"))
r.Handle("/debug/pprof/heap", pprof.Handler("heap"))
r.Handle("/debug/pprof/threadcreate", pprof.Handler("threadcreate"))
r.Handle("/debug/pprof/block", pprof.Handler("block"))

apiHandler := app.NewAPIHandler(jaegerBatchesHandler)
apiHandler.RegisterRoutes(r)

Regards, Konrad G

@black-adder
Copy link
Contributor

please do!

@yurishkuro
Copy link
Member

We internally build a different binary, where we had profiling endpoints. Feel free to create a PR to add them.

My only open question is whether we need a separate admin port for these things.

@jpkrohling
Copy link
Contributor

My only open question is whether we need a separate admin port for these things.

Yes. We don't want the wide world to access those profiling endpoints :-) They can be added to the same "healthcheck" port, as those are also meant to be admin-only.

@yurishkuro
Copy link
Member

What about /metrics? Does it fall in the same category?

@jpkrohling
Copy link
Contributor

I would say so, yes.

@ghost ghost assigned konradgaluszka Feb 23, 2019
@ghost ghost added the review label Feb 23, 2019
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Feb 25, 2019
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Feb 26, 2019
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Feb 26, 2019
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Feb 26, 2019
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Feb 28, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 1, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 1, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 1, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 1, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 2, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>
konradgaluszka pushed a commit to SabreOSS/jaeger that referenced this issue Mar 27, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>

Add pprof endpoints (jaegertracing#1315)
yurishkuro pushed a commit that referenced this issue Apr 6, 2019
Signed-off-by: Konrad Galuszka <konrad.galuszka.ctr@sabre.com>

Add pprof endpoints (#1315)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants