2011-06-01 77 views
0

我正在寻找一些改进以下问题解决方案的指针。尽管我正在使用Unix工具链,但我更倾向于使用一般方法而不是实现。完成网站访问审核和报告的策略

这里,我们去:

的网站每天的访问应记录和企业用户应该能够在近实时报告它(有5分钟的延迟是可以接受的)。报告将按用户或时间段或两者的组合进行过滤。

匿名用户访问记录为良好,信息在登录前应与在已注册的用户一旦匿名用户登录。

我要记录每个页面的访问(GET或POST)加任何参数加上时间戳。

报告的要求是:“告诉我,上午11:15和11:18之间有什么用户ID 1没有”

和响应应该是:

  • 在11时15分23秒,他来到到主页。
  • 11:15:49他去了我们的页面。
  • 11:16:23他去了登录页面。
  • 11:16:34他试图用用户名“hacked”登录。
  • 在11时16分38秒的登录请求失败 - 用户名/密码不正确
  • 在11点16分45秒,他在登录时的用户名“myuser的”
  • 在十一时17分12秒他又到产品页面。

解决方法是将所有这些使用会话ID作为主键和帐户ID以及请求数据插入到数据库中。

为了不阻止数据库插入之间的消息队列,并延迟写入数据库。

但是,随着数据库中数据量的增加,报告可能会很快变慢。

我知道像woopra解决方案 - 但我希望可以先内部还保持访问者数据,如内部与内部基于角色的访问数据报告的想法,等

编辑:你过去是如何做到这一点的,或者如果你有完整的选择选择,你会怎么做?

+0

我在那里看不到问题。 – jgauffin 2011-06-01 14:30:34

+0

够公平 - 已添加。 – Longestline 2011-06-01 23:44:17

回答

0

立即执行某些操作的更简单方法是在您的服务器/应用程序上实施谷歌分析,而无需太多开销。

使用它的缺点是事件并不是实时的......这是几个小时的时间。

另一种解决方案是将消息传递解决方案实施到单独的数据库,然后重新执行

+0

你能否完成这个答案?有一个块被切断。 Google Analytics(分析)正如您所提到的那样延迟,因此不是理想的解决方案除此之外,Google Analytics不支持POST参数AFAIK。 – Longestline 2011-06-01 23:49:13