parca icon indicating copy to clipboard operation
parca copied to clipboard

Generate callgraph report - node / edge list

Open monicawoj opened this issue 3 years ago • 1 comments

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.

monicawoj avatar Aug 01 '22 15:08 monicawoj

  • [x] To reduce the number of nodes, filter out nodes and edges that have weight 0.005 times the total weight.
  • [ ] Put the callgraph UI elements behind a feature flag

manojVivek avatar Aug 11 '22 06:08 manojVivek