如何记录和分析我网站上的某些用户操作

时间:2012-04-13 12:55:33

标签: asp.net statistics monitoring

我有一个提供搜索体验的简单页面。它允许用户通过查询表单进行搜索,过滤结果,并根据第一次搜索的结果执行更深入的搜索。

我想了解一些关于用户体验以及他们如何使用该页面的指标。大多数用户操作都会在新的查询字符串中进行转换。例如:

  • 有多少用户执行搜索,然后使用其他搜索/过滤器进行跟进
  • 搜索查询中使用通配符的次数
  • 用户在新搜索之前浏览了多少结果

由于版权问题,我也受限于使用谷歌分析和排序(如果它真的是开放网络分析或smth的方式,我可以提出一个案例)。服务器端我正在考虑使用cookie跟踪用户和log4net来记录他们的操作,然后将信息转储到数据库并从那里进行分析。或者登录事件查看器并使用日志查看器从那里获取信息。

您认为整体更好的方法是什么?

2 个答案:

答案 0 :(得分:2)

我建议您使用现有的现成解决方案,而不是构建自己的解决方案 - 这是一种规模迅速增长的项目。你可以从你问题中的3个指标变成“哦,你可以根据用户浏览的国家/地区分解它吗?”,“哪些语言会影响问题?”,“如果他们点击结果,他们最终会购买任何东西吗?”香蕉?“然后,在您了解它之前,您已经构建了自己的网络分析工具......

因此,您可以使用Google Analytics等“网络分析即服务”产品,也可以使用更老式的日志解析解决方案。您要回答的大多数问题都可以从IIS Web日志中的数据中获得;有许多应用程序可以解析这些数据,包括开源和免费解决方案。

自从我使用基于日志文件的分析工具以来,已经有很长一段时间了,但是我的ISP提供了AWStats,看起来还不错 - 做你想做的事情,你必须设置特定的测量值搜索页面;不确定AWStats是否这样做(Google Analytics肯定会这样做);检查Wikipedia列表中的日志文件分析工具。

答案 1 :(得分:1)

显然,您需要记录搜索页面的每个提交。 特别需要记录:

  • DateTime.Now
  • SearchString在
  • 的SessionID

您还可以在会话中存储一个计数器,每次用户加载页面时都会增加一个计数器,而不是搜索页面。 如果用户执行搜索,您可以从会话中读取该值,将其存储在数据库中并重置计数器。

请注意,“由于Cookie支持,多重攻击,页面重新加载等等,”用户在新搜索之前显示的结果数量“的度量标准应仅作为估算而不是实际指标。