We have several highly complex ASP.NET web applications that are used internally by hundreds of users. We are trying to figure out which areas of the applications to invest in to improve functionality, but we aren't sure which screens/features are more heavily used. So, ideally, I'd like to find a way to add a layer of instrumentation to the applications that gathers metrics on which buttons are being clicked, which text boxes are being used, etc.

Are there any products / open source apps out there that will do this sort of instrumentation for ASP.NET? Obviously I could do it myself manually by going into the code and injecting logging statements everywhere but this would be a significant amount of work that will be hard to accomplish.

2 Answers 2


Two things come to mind:

  1. Web log analysis with a tool like AWStats. This isn't going to give you the granularity that you are asking for, but is still very useful.
  2. Work backwards from your most expensive and frequent database queries.
  • The database is a good idea. And sometimes that does work but sometimes the database queries are fairly disconnected from the features being used so it is hard to tell. I will take a look at AWStats. Commented Nov 21, 2011 at 20:42
  • Web log analysis is often a good starting point, especially if you already have the logs there ready to analyze right now, so you don't need to set up instrumentation and then gather data for a while before you can look at the results. Commented Nov 21, 2011 at 22:34

To me, the easiest way to do this is to just setup a Google Analytics account and then monitor it from there. It won't cost you a dime and all you'll have to do is add the javascript to each page. You would then be able to see which pages are frequented most often and you could even do in-page analysis which would show where your users are clicking.

  • While this might work for some, it doesn't work for us. This is an internal application. We would need something that runs inside our corporate firewall, ideally on the same web server that is serving the ASP.NET app. Also, I'm looking for something more finer-grained than page level. So the tool would have to understand ASP.NET to get to that level of detail. Commented Nov 21, 2011 at 20:03
  • @jkohlhepp Ah ok. Sorry I can't be of more help.
    – Jetti
    Commented Nov 21, 2011 at 20:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.