In VB .NET, I know I can get a stack trace by looking at the value of ex.StackTrace
when handling an exception. How can I get the functions on the stack when I am not handling an exception? I am looking to implement a logging system of some sort to record the steps the user takes prior to a crash to assist in debugging.
views:
53answers:
3
+2
A:
Environment.StackTrace
gives you a string, but for more detailed information and options, use the StackTrace
class.
To be more specific, check out the constructor options:
http://msdn.microsoft.com/en-us/library/system.diagnostics.stacktrace.stacktrace.aspx
If you need the stack trace starting at the caller's frame (e.g. in a logging function: you don't want everything to start with MyLogMethod
), you should try this one, which takes an int
parameter, the number of frames to skip.
If you need the stack trace without source information (e.g. if you don't want to give away information about your source code), try this one:
Hope that helps!
Kieren Johnstone
2010-07-15 20:11:25