• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Log and persist all user activity on the website?

 
Ranch Hand
Posts: 245
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
My manager has asked me to find a solution to log "every" single activity and put it into the Database.
Like from the time the users access the website, their IP address, what all links they clicked, what search parameters were given and also log any exception that were encountered and put that log into the database.
Also, the code should be non-intrusive.
I fail to understand the need and the feasibility of doing this.
I tried to ask, but he left in a hurry and said that he's expecting me to propose a solution when he gets back.
Anybody knows if there's a framework to do that ?
First of all why would we require to log all activities of all the users?
To my knowledge even if we are auditing, we don't sniff the links that a user might click.And why would we want to store that in a database?
 
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Prashant

What you are trying to do can likely be better accomplished with web analytics software such as Webtrends (commercial and expensive) or AWStats (open source and free).

If you decide to roll your own solution, you can find most of the information that you want in the HttpServletRequest object. The proper place to record this information would be in a servlet filter.
 
Jason Nesbitt
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
.. and the reasoning for collecting this information is usually for marketing and/or usability data. Sometimes for security too.
 
tapeshwar sharma
Ranch Hand
Posts: 245
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Filter is what came to my mind as well, but wouldn't it be bad for the application's performance if every action of every user is persisted?
 
Marshal
Posts: 28193
95
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Bad? It might be. And then again it might not be. It all depends on your application and how you implement this logging and what your response time goals are and so on.
 
tapeshwar sharma
Ranch Hand
Posts: 245
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It is a high transaction application. There are 4 appservers clustered together.Right now, the response time is short.Basically, I am not sure about whether it is a usual practice for high transaction applications to log user activities like that.
WebTrends is a good product for that, but it doesn't require changing much inside the application, and I would be surprised if it logs the application errors.It seems the application is trying to do too many things.
Does the explanation make it easier to answer the question?
 
Paul Clapham
Marshal
Posts: 28193
95
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by prashant bhardwaj:
WebTrends is a good product for that, but it doesn't require changing much inside the application, and I would be surprised if it logs the application errors.

Don't assume you have to have a single solution to address all of those requirements. I wouldn't think it's a bad thing to log application errors to a different place than where you log all of the incoming transactions. In fact if you did that, they would just get lost in the noise.
 
tapeshwar sharma
Ranch Hand
Posts: 245
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks everyone for their inputs.
My Boss realized how complex it is getting and now we are left with a much leaner task.
In short, this is a mimic of WebTrends.
May be the company didn't have the money to spare for that product.
 
reply
    Bookmark Topic Watch Topic
  • New Topic