Along with yesterday's introduction of JustDecompile, Telerik also introduced the beta for another new developer productivity tool: JustTrace. JustTrace is .NET memory and performance profiler, designed to make the process profiling local (WinForms, WPF), Silverlight, and ASP.NET applications as easy as hitting F5 in Visual Studio. With the help of JustTrace, you should be able to find problem areas in your code and then work on refactoring (perhaps with the help of JustCode) to improve your application performance and/or memory footprint.
Of course, a new product introduction means lots of questions. So to help provide some answers while we are in this JustTrace BETA, I have prepared a list of "unofficial FAQs."
(If you're looking for answers to JustDecompile questions, see yesterday's U-FAQ list.)
JustTrace Beta Q&A
Q: What is JustTrace?
JustTrace is a new (beta) .NET memory and performance profiler from Telerik. JustTrace enables developers to quickly profile executing .NET applications and see results that help identify slow running code or code that is consuming large amounts of memory. JustTrace supports profiling of local applications (WinForms, WPF), Silverlight, and ASP.NET (including ASP.NET MVC). It is available as a standalone application and it also ships with Visual Studio integration for profiling directly from the VS IDE.
Q: Why is Telerik making a .NET performance and memory profiler?
Consistent with Telerik's over-arching goal of being a complete, end-to-end provider of solutions and tools for software development, JustTrace is complimentary tool to Telerik's existing developer productivity tools, JustCode and JustMock. Where JustCode helps with writing code and JustMock helps with testing code, JustTrace helps with optimizing code.
In addition to being complimentary, JustTrace aims to improve upon existing .NET profiling tools and provide a better, integrated development experience with the other Telerik tools.
Q: How is JustTrace different from existing similar tools?
Clearly, JustTrace has a long way to go from today's beta to v1 and beyond to fully cover all areas that existing .NET profiling tools cover. But even from the first beta, we are doing some things fundamentally different that we think are improvements for the .NET profiling space:
- Simplified Licensing/Combined Power- While some tools make you pay twice- once for Performance Profiling, once for Memory Profiling- JustTrace combines both capabilities in to single, simple to use tool. Don't get caught it the arbitrary limits of Memory vs Performance vs Standard/Pro version schemes. JustTrace just works and let's you focus on productively optimizing your code.
- Fast Snapshots - Some profiling tools give you enough time to grab a cup of a coffee and catch-up on your RSS backlog while waiting for a snapshot. JustTrace aims to make the process of capturing snapshots fast so you don't lose focus or valuable productive time.
- Simple Tools - Many developers avoid profiling because it seems complicated and difficult to do. JustTrace is focused on making the process super simple, while still providing powerful results. With Visual Studio integration, just hit F5 and JustTrace will handle the rest.
- Live Data - Why wait for snapshots to see what's happening with your app? JustTrace provides a "Live Data" view that let's you see real-time stats during Performance Profiling so you know exactly when to take a snapshot.
As we push towards v1, JustTrace will continue to improve baseline features (like performance), while working fast to add improved analysis tools, like rich data visualizations and views for understanding the collected data.
Q: How much does JustTrace cost?
JustTrace pricing has not yet been set, though it will likely be a cost leader. Please stay tuned for pricing information around the time of the official release. JustTrace will not be a free product.
Q: When will JustTrace be available?
The JustTrace beta is available now! The first official version of JustTrace will ship with the Telerik Q2 2011 release this summer.
Q: Will JustTrace be part of the Telerik Ultimate Collection?
Yes, JustTrace will be part of the Telerik Ultimate Collection and also available as a separately licensed product. JustTrace will not be part of the Telerik Premium Collection.
Q: How do I install JustTrace?
JustTrace must be installed as an administrator. If UAC is disabled on your machine, simply run the installer. If UAC is enabled, you may have to perform a special work around described in this forum thread to successfully run the beta installer. This will be improved for the final release.
Q: What kinds of applications can JustTrace profile?
JustTrace can trace local applications (WinForms, WPF), Silverlight, and ASP.NET (including ASP.NET MVC and WebForms). JustTrace also supports attaching to a running local process for fast tracing of applications already executing.
Q: Does JustTrace support profiling for Windows Phone?
The current JustTrace beta does not offer direct support for profiling Windows Phone apps, but this is feature on our roadmap. More details on support for mobile profiling will come in the future.
Q: What types of profiling does JustTrace support?
The JustTrace beta ships with three different profiling options:
- Sampling Profiler - Least impact on app runtime performance, but slightly less accurate as it relies on interval polling to collect data
- Performance Profiler - Usually slows down a runtime app, but much more accurate/complete collection of profiling data
- Memory Profiler - Unlike the Sampling and Performance profilers, which look at app method execution times, the Memory Profiler looks at objects counts and size created by your app.
Each profiler can be easily selected from either the standalone JustTrace application or the Visual Studio integration profiling launch window.
Q: Does JustTrace support 64 bit application profiling?
Yes! Part of the focus with JustTrace has been on doing things right from the beginning, and that includes offering full support for profiling x86 and x64 applications.
Q: What kind of data does the JustTrace profiler report?
JustTrace has two primary types of reports: data collected by the performance profilers (Sampling, Performance), and data collected by the Memory Profiler.
The performance profilers provide live views of the counters being collected (showing info like Class Name, Hit Count, and Method Name), and the snapshots further reveal Call Tree, Method List, Hot Spots, and Loaded Assemblies.
The memory profiler does not provide a live data view, but a snapshot reveals Type List (with instance and total size counts), Hot Spots, Incoming References, and Outgoing References.
Q: Does JustTrace work with IIS for profiling ASP.NET applications?
Currently the JustTrace beta only supports the Visual Studio Cassini development web server, but support for IIS and IIS Express are high priorities for upcoming builds. Support for IIS and IIS Express will be in the official release.
Q: Can JustTrace profile and capture multiple threads?
Yes! JustTrace will automatically capture and profile multiple threads in an application. It is also capable of profiling multiple child processes if your application spawns new processes during runtime.
Q: Can you compare multiple JustTrace snapshots?
No, not in the current beta, however this is a planned feature for the official v1 release.
Q: Does JustTrace integrate with Visual Studio?
Yes, JustTrace integrates with Visual Studio when the installer is run. It will add a "JustTrace" menu option to the Telerik Visual Studio menu. From this menu, you can enable/disable JustTrace in Visual Studio. When enabled, simply hitting F5 to run your application will automatically display the JustTrace prompt to let you quickly begin profiling your app.
Q: Can JustTrace be used to profile the behavior of OpenAccess ORM?
No, JustTrace is not designed to be a profiling tool for data. Fortunately, OpenAccess ORM will be adding a dedicated data profiling tool in the Q2 2011 release.
Q: Will JustTrace offer more visual tools for analyzing profiled data?
Definitely! This is an early beta preview of a v1 product, so there is lots of work left to do. One of our key areas of focus for future JustTrace improvements is in adding more rich visualizations of the profiled data. Stay tuned…
Q: Where do I report JustTrace Beta issues?
You can report any JustTrace beta issues or feedback in the official JustTrace forums on Telerik.com.
Hopefully this helps you get started with the JustTrace beta. We are working hard to add many more features and improve those already previewed in the beta before the official release in Q2 2011. Download the beta today and join the conversation on the Telerik forums!