【问题标题】:User Activity Profile and Statistics用户活动概况和统计
【发布时间】:2010-10-21 03:52:18
【问题描述】:

我只是在探索什么是实现功能的最佳实践/框架,以收集和显示特定于用户的用户活动统计信息以及与 ASP.NET 中的登录用户活动相关的站点。例如,我想知道我网站上的特定登录用户,他/她在过去一天、一周等访问过哪个网站。频率是多少?前 5/10?对于整个网站,前 5 个热门页面或搜索词是什么(仅基于登录用户,而不是爬虫或匿名访问)

我使用过 getclicky、webstats 和谷歌分析等网络统计工具。它们都很棒,但跟踪是基于一般访问,但我想要将它与我系统中定义的个人用户/角色或组织结构联系起来,并能够向利益相关者报告它们。

如果我们有层次结构,比如用户->部门/组->公司并尝试报告该用户的前 5 个站点是什么,这也会变得更有趣?该部门/业务单位/组中用户访问的前 5 个站点是什么?页面频率是多少?

问题: 那么在 ASP.NET 中实现此功能的最佳方法是什么?是否有执行此操作的 httpModule 处理程序、框架或产品?

【问题讨论】:

  • 嗨彼得,我的问题是第一行和第二行所说的。我将编辑帖子并使其更加明显

标签: c# asp.net analytics


【解决方案1】:

我会告诉你我做了什么。

  • 如果您知道要在统计信息中查找什么,例如,如您所说,频率是多少,然后在插入新数据时进行此统计计算。

例如,假设您搜索用户 A 访问了多少页面。在连接该用户 A 的统计表上保留一行,其中包含您需要拥有的信息,并在您输入它们的那一刻计算它们,例如,在每个页面中只需增加有多少人看到的计数器。这样,您就可以使用在线统计数据避免后台工作和数千行条目。我相信您首先需要知道要查找哪些统计信息,如果将来还有更多,请稍后添加。

  • 您可以使用线程或调用额外的处理程序在页面末尾添加对统计计算和插入的调用,这样用户就不会延迟查看页面。

例如,在页面末尾:

<img src="/myStats.ashx?infos=CodeStringWithSomeInfos">

在 myStats.ashx 上,保存您的统计数据,并返回一个 emtpy gif。

    【讨论】:

    • 感谢您提供信息并分享您的知识。我仍然希望从其他做过的人那里学到更多,希望有一些已知的方法,或者希望从更多的回应中我们都可以确信有一种标准方法:)
    【解决方案2】:

    我不确定具体细节,但我的印象是您可以将自定义字段添加到谷歌分析。您可以使用它来记录用户、角色以及您在服务器应用程序中记录的有关用户的任何业务特定数据。如果分析没有这个选项,Omniture 肯定有(它的工作原理很像谷歌分析,因为它使用 javascript 跟踪)。 Omniture 不是免费的解决方案。 (www.omniture.com)

    【讨论】:

    • 感谢您的信息。我将向您详细了解谷歌分析和omniture中可用的定制,并评估它们是否合适
    【解决方案3】:

    另一个想法(为了最大程度地控制登录用户的活动),您可以使用带有自定义上下文的 Logging 框架(例如带有 Log4Net 提供程序的 Common Logging),然后使用附加的数据库。您可以完全控制与用户活动相关的日志记录。通过使用附加的数据库,计算统计数据将非常简单......

    【讨论】:

      【解决方案4】:

      我认为 GA 不是最适合您的解决方案。 还有很多其他的 WebAnalytics 解决方案可以为您提供更灵活的跟踪。

      我认为最好的免费解决方案是 Yahoo WebAnalytics。它会为您提供类似于 GA 的跟踪代码,但包含更多自定义变量。

      在您的情况下,我认为最好的付费解决方案是 Adob​​e SiteCatalyst,它具有 150 个自定义变量、分层变量等,是市场上最好的平台。

      克劳迪奥。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-07
        • 1970-01-01
        • 2017-11-27
        • 1970-01-01
        • 2012-08-31
        • 1970-01-01
        相关资源
        最近更新 更多