parca
parca copied to clipboard
Generate callgraph report - node / edge list
This issue is related to the UI issue of creating a callgraph visualization: #304
In order to render a callgraph visualization in the UI, we will need the backend to format data as a list of nodes and edges, as such:
Node {
data: {
id,
...any additional info related to the method called
}
}
Edge {
data: {
id,
source, // id of a node
target, // id of a node
...any additional info related to the edges between nodes
}
}
{ data: {nodes: Node[], edges: Edge[]} }
This data will help inform us as to which layout algorithm will be optimal for rendering the callgraph, so it would ideally be complete before the frontend is ready to merge. Once the layout algorithm informed by real data has been chosen, both PRs (backend and frontend) can be merged.
- [x] To reduce the number of nodes, filter out nodes and edges that have weight
0.005times the total weight. - [ ] Put the callgraph UI elements behind a feature flag