Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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.

share|improve this question
up vote 3 down vote accepted

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.
share|improve this answer
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. – RationalGeek Nov 21 '11 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. – Carson63000 Nov 21 '11 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.

share|improve this answer
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. – RationalGeek Nov 21 '11 at 20:03
@jkohlhepp Ah ok. Sorry I can't be of more help. – Jetti Nov 21 '11 at 20:13

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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