Click here to Skip to main content
13,292,718 members (66,352 online)
Click here to Skip to main content
Add your own
alternative version


50 bookmarked
Posted 26 Jul 2006

Application dashboard for tracking .NET application performance

, 26 Jul 2006
Rate this:
Please Sign up or sign in to vote.
Provides graphical feedback on the performance (memory usage, garbage collection, threads, exceptions, loaded classes) of a .NET application.

Sample Image - MemoryDashboard.jpg


When a .NET application is running, it registers and updates a large number of performance counters which you can use to monitor the way your application is running - for example, how many threads is it using, what its memory usage is, how long it spends doing garbage collection, and so on.

You can read these properties using the .NET Framework built-in PerformaceCounter class. The attached code does just that and presents the results in a graphical format which you can have open and watching as you test your application - this can show up performance issues before the users get to see the problems.

How to use

To use the application, start your test application running, then fire up the application dashboard. Then select the menu File .. Settings and select your application from the drop down list of running .NET applications. You can also adjust the maximum and minimum values of each gauge so that it better matches your application.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Duncan Edwards Jones
Software Developer (Senior)
Ireland Ireland
C# / SQL Server developer
Microsoft MVP (Azure) 2017
Microsoft MVP (Visual Basic) 2006, 2007

You may also be interested in...


Comments and Discussions

Generalsample Pin
parasuram-gpr20-Feb-09 21:44
memberparasuram-gpr20-Feb-09 21:44 
GeneralRe: sample Pin
Duncan Edwards Jones8-Jul-09 7:40
memberDuncan Edwards Jones8-Jul-09 7:40 
QuestionHow to use chart fx gauges Pin
irafN7863-Aug-08 9:03
memberirafN7863-Aug-08 9:03 
AnswerRe: How to use chart fx gauges Pin
Duncan Edwards Jones3-Aug-08 9:49
memberDuncan Edwards Jones3-Aug-08 9:49 
GeneralRe: How to use chart fx gauges Pin
irafN7864-Aug-08 0:16
memberirafN7864-Aug-08 0:16 
GeneralGood Idea Pin
Nice Life12-Oct-06 5:44
memberNice Life12-Oct-06 5:44 
GeneralRe: Good Idea Pin
Duncan Edwards Jones13-Oct-06 3:52
memberDuncan Edwards Jones13-Oct-06 3:52 
GeneralSome comments.... Pin
Juergen Posny27-Jul-06 22:56
memberJuergen Posny27-Jul-06 22:56 
I walked through your source, and I have some comments / questions for you:

1. Every time, the user changes settings, new instnces of the counters are made, and the old ones are unhandled in memory. I think, you trust the GC, but in this case, this can cause lots of problems, when your app is running longer time (PerformanceCounters are dealing with unmanaged code, and when garbage collection fails, you produce memory leaks), so it would be nice to 'Dispose' the counters correctly, when leaving the app.
Then you only should have one instance of the counters, and when changing settings (instance name), set the property 'InstanceName' of the counters.

1. Why do uou use public constants for the categories / names. When using one instance of the counters, there are no constants needed, just call the constructor once with the names....

GeneralRe: Some comments.... [modified] Pin
Duncan Edwards Jones27-Jul-06 23:03
memberDuncan Edwards Jones27-Jul-06 23:03 
QuestionToo many exceptions !!! [modified] Pin
Nigel Savidge27-Jul-06 4:06
memberNigel Savidge27-Jul-06 4:06 
AnswerRe: Too many exceptions !!! Pin
Duncan Edwards Jones27-Jul-06 4:46
memberDuncan Edwards Jones27-Jul-06 4:46 
GeneralException on Application Close Pin
dgauerke27-Jul-06 4:05
memberdgauerke27-Jul-06 4:05 
GeneralRe: Exception on Application Close Pin
Duncan Edwards Jones27-Jul-06 4:50
memberDuncan Edwards Jones27-Jul-06 4:50 
GeneralRe: Exception on Application Close Pin
Duncan Edwards Jones28-Jul-06 2:41
memberDuncan Edwards Jones28-Jul-06 2:41 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.171207.1 | Last Updated 27 Jul 2006
Article Copyright 2006 by Duncan Edwards Jones
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid