views:

383

answers:

5

I am looking for ways to keep track of simultaneous users within an application. I cannot use IIS logs due to a load balancer that abstracts the users IP address. I am looking for a .NET code based solution or a configuration item, possibly with health monitoring to be able to track the "true" simultaneous user count.

I know that I can monitor the number of sessions, but that isn't really an ideal method to show, as it can be bloated based on the number of sessions with users abandoning their session.

+2  A: 

There is a similiar question here: Tools and methods for live-monitoring ASP.NET web applications?

I found an advanced logging tool for debugging and monitoring .NET applications: SmartInspect. But I don't know if it meets your requirements.

splattne
A: 

You just want to know the number of active users at a particular time? An easy option that omits inactive users as well as most bots would be to register the user as active through a JavaScript AJAX call on page load along with their SessionID. You can then purge old records from the log as you see fit. *Be careful of how you build your table's performance for read/write optimizations. ... just an idea off the top of my head.

Eric Swanson
sadly we cannot edit the applications.
Mitchel Sellers
+1  A: 

What do you mean of "simultaneous users"? Perhaps you should monitor simultaneous TCP connections to your IIS application? Windows Performance Monitor tools should help you there.

Otherwise there is no sure way of telling how many users are using your application right now. If you can monitor number of sessions, then I'd suggest going with that. Just take into account the last modification time of the sessions, so you could get something like "active sessions in the last minute". That should give you a close measurment.

Vilx-
We were looking at active sessions and requests.I ended up parsing the IIS logs to get max number of requests per second, which ended up getting what we needed.
Mitchel Sellers
+1  A: 

In the end we decided to use ASP.NET Performance counters, as well as generic information from the IIS Logs.

I parsed the information from both sources using the Microsoft Log Parser tool!

Mitchel Sellers
A: 

We are using an expensive solution which is AVICode but it is great. You can monitor so many thing with that.

SevDer
Happen to have a link?
Mitchel Sellers