I am just exploring on what is the best practice/framework for implementing feature for collecting and displaying user activity statistics that is user specific and site relating to login user activities in ASP.NET. For example, I will want to know for a particular login user on my site, which site he/she has visited in the last day, week or etc. What is the frequency? top 5/10? and for the overall site, what are the top 5 popular pages or search terms (based only on login users not crawler or anonymous visits)
I have used web stats tool like getclicky, webstats and google analytics. They are all great but the tracking is based on generic visits but what I want is to tie it in with individual users/roles or organisation structure defined in my system and be able to report on them to the stakeholders.
This gets more interesting too if we have hierarchical structure say, user->department/group->company and try reporting on what are the top 5 sites for this user? what are the top 5 sites visited by users in this department/business units/group? what are the page frequency?
QUESTION: So what is the best way to implement this in ASP.NET? Is there a httpModule handler, framework or product that does this?