java 用户行为记录_大型网站用户行为记录的一个实现

大型互联网应用记录用户的行为是一个问题,如何在不影响用户体验的情况下,异步的追踪用户的行为,apache 的开源项目clickstream 是个不错的选择,根据session 的 建立和销毁 来记录用户的行为日志。

Clickstream 概述

一个用来跟踪正在你的站点上访问的用户所到达位置细节的工具。它允许你跟踪访问你的站点的“点击流”或者“传输路径”。请访问JIRA的更新日志 来了解Clickstream最近的发展。

特性

当用户会话产生时,开始跟踪点击流。(通过一个监听器 )

跟踪用户产生的每次点击信息。(通过一个过滤器 )

当用户会话终止时,将完整的点击流记录到文件或者PrintStream中。

设法发现用户是不是机器人,并进行适当的过滤(目前可以检测252种机器人)

下面我使用 以前的一个SSH 整合的OA  系统来做为例子,给这个系统加上 用户行为记录(先记录到控制台上),稍后我们记录到远程的日志服务器上

步骤:

1. 在web.xml 中加上 clickstream 的filter ,配置 clickstream 拦截的行为 ,注意顺序,需要配置在web.xml的 靠前部分

Xml代码 29893986_1.gif 29893986_2.png

clickstream

com.opensymphony.clickstream.ClickstreamFilter

clickstream

*.jsp

clickstream

*.html

clickstream

*.htm

clickstream

*.do

com.opensymphony.clickstream.ClickstreamListener

2.  session 超时以后,需要调用哪个方法来完成行为日志得记录?也就是把某个sessionID 关联的行为记录下来,需要我们实现一个clickstream 的接口 ClickstreamLogger 接口,在 session  超时的时候,它会调用 log 方法,在log方法中我们可以通过  遍历 list 的方式 拿到 clickstream 帮我们记录的 某个具体的 sessionID  的行为,然后我们根据自己的业务要求来进行 持久化--- 交给日志服务器

Java代码 29893986_1.gif 29893986_2.png

pa

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值