I typically don’t write about most performance analysis tools because, frankly, most of them are quite bland and don’t provide very interesting information or analysis. dynaTrace provides some information that I’ve never seen before – in any tool on any browser.
dynaTrace Ajax works by sticking low-level instrumentation into Internet Explorer when it launches, capturing any activity that occurs – and I mean virtually any activity that you can imagine. I noticed very little slow down when running the browser in tracing mode (although it’s sometimes hard to tell, considering the browser). However all of the tracing is recorded and saved for later, making it easy to record sessions for later analysis.
You can select a segment of the timeline and get a view that looks like the following:
Note that in the stack trace view you can click any piece of code and see its location anywhere inside the source code (and this even works after you’ve already closed the browser and have moved on – all source code is saved for later analysis).
While it’s interesting to trace through code to look for problems the bigger question is usually: Where are slowdowns occurring? This is where the HotPath view comes into play:
dynaTrace provides an additional view, called PurePath that attempts to figure out problematic scripts:
Just another way to try and get a full picture as to where your application is slowing down and what may be causing the problem.
In all I’m hugely impressed with this (free!) tool and am already using it to do more testing and performance analysis on my code. I don’t think any browser has ever had a tool capable of this type of analysis, let alone Internet Explorer 6 and 7, which are still a very real part of any developer’s workflow.