'How can I see a visualization of a dynamic call graph for a .NET program?
Is there a tool out there for visualizing dynamic call graphs? I saw a reference to one for Visual Basic 6 but I'd like one for .NET.
If I had to build a visualizer myself should I bother with the .NET profiling API or should I do something with Mono.Cecil? I started writing a CLI runtime with Cecil, but I guess it'd be easier if I just injected call-graph recording calls in the assemblies, although since I don't know the execution route ahead of time and would have to instrument everything.
Solution 1:[1]
Maybe this open source project on CodePlex could help as starting point:
SequenceViz
http://www.codeplex.com/sequenceviz
"SequenceViz is a tool to generate sequence diagrams by reverse engineering .NET Assemblies. Although it does a little more than that in the later versions."
There is a standalone version and an implementation as reflector-plugin.
Solution 2:[2]
You coud use NProf, an open source project on Sourceforge. It allows you to extend the default GUI with new visualization tools.
"nprof is designed to be not only a fully-fledged profiler for .NET applications, but also a complete API that can be used to build other profiler front-ends, as well as extend the default GUI with new visualization tools."
Solution 3:[3]
I love the CLR Profiler. I won't waste space by reproducing the documentation here, but it sounds like it is exactly what you are looking for.
The CLR Profiler is now available on Microsoft's Archive GitHub
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | splattne |
| Solution 2 | Mark Cidade |
| Solution 3 | heavyd |
