views:

23

answers:

2

I need to add some metrics and statistics capabilities in ASP.NET application (Framework 2.0, SQL Server 2005). It's Intranet application, so I can't use Google Analytics.

I need not only measure number of hits and visits, but also which buttons people are pressing and which functions of application are using.

Will it be enough to use IIS logs and MS Log Parser or should I write all people action to database and the analyse them?

Are the some components, which I can use?

Thank you.

+1  A: 

Before you decide how you're going to produce the metrics you require, you should define what metrics you require and then start investigating solutions to use.

IIS logs will certainly tell you what pages have been visited, but given the postback nature of asp.net (unless you're referring to an asp.net mvc application), it won't give you information regarding "which button" has been pressed. If you need that level of information you're ultimately going to have to log some data somewhere. A database is almost certainly the best bet as it's then very easy to write SQL queries to mine the data. The downside is that you'll need to add calls to your logging routine in each place that you care about gathering data.

One thing to bear in mind is the volume of data that you're logging and how you manage it. If you log too much, or have no archival/clear-out plan, you could find that you end up with more log data than application data which can pose a problem if the application is used heavily by a large number of users. I've seen, more than once, tables called ProcessLog or Trace that contain more data than the rest of the system combined.

Rob
Thank you, Rob.What do you think should I use some logging components, like log4net or some other?
Alex
@Alex, it really is one of those "it depends" questions. log4net would do all the work for you, but it may be overkill. Give it a go, at worst it's an hour of your time! =)
Rob
+1  A: 

Try GIBRALTAR. It has built-in integration with ASP.NET Health Monitoring including detailed page metric tracking and tracking of which buttons people are pressing and which functions of application are using by simply tagging key methods with an attribute.

Gibraltar also provides a non-blocking, threadsafe logging framework, a web service to collect logs and an analysis tool with extensive filtering and graphing capabilities. If you're already using Log4Net, NLog or other frameworks, Gibraltar has connectors to integrate those data streams.

Gibraltar offers a free 30-day trial and deep discounts for multi-user license bundles. It's not free, but it is actively supported by a passionate, experienced team that really knows and cares about logging and application monitoring. Chat with us if you have questions.

Jay Cincotta
okay, thanks, I will look.
Alex