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

Support other formats in /render endpoint #471

Closed
2 tasks
petethepig opened this issue Oct 18, 2021 · 1 comment · Fixed by #518
Closed
2 tasks

Support other formats in /render endpoint #471

petethepig opened this issue Oct 18, 2021 · 1 comment · Fixed by #518
Assignees
Labels
backend Mostly go code

Comments

@petethepig
Copy link
Member

Currently /render endpoint only returns data in flamebearer format. Users have been asking for other formats as well.

We already have support for different ingestion formats. I think it's time to extend the render endpoint with support for these formats as well. Here's the code for ingestion part.

For rendering we should do something similar. Extra formats we should add support for are:

  • collapsed (also called "groups" in our source code), it's basically stacktraces grouped by how many times a certain stacktrace was seen, e.g:
foo;bar 100
foo;baz 200
  • pprof
@petethepig petethepig added the backend Mostly go code label Oct 18, 2021
@petethepig
Copy link
Member Author

Example of what pprof looks like in json form https://gist.github.com/petethepig/6f1efc0ca695536e81695739ae2be037

@gawicks gawicks linked a pull request Nov 11, 2021 that will close this issue
2 tasks
petethepig pushed a commit that referenced this issue Nov 16, 2021
#518)

* pprof wip

* pprof cleanup

* iterate2

* rename profile.tree.pb

* + collapsed format

* serve pprof on render endpoint

* more TODOs

* lint fixes

* Update pkg/storage/tree/pprof.go

Co-authored-by: Alfredo Beaumont <[email protected]>

* Update pkg/server/render.go

Co-authored-by: Alfredo Beaumont <[email protected]>

* move profile.pb.go , profile.proto to pkg tree

* remove redundant PprofStruct

* make locking consistent

* reuse Collapsed() for String()

* change filenames

* rename Iterate

* add tests

* remove todo comment

* minor fixes

* fix tests

* increae test coverage

Co-authored-by: Alfredo Beaumont <[email protected]>
korniltsev pushed a commit that referenced this issue Jul 18, 2023
Fix download instructions for Phlare
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Mostly go code
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants