.net - 跟踪用户在业务应用程序中的操作

标签 .net

我工作的公司正在重新设计我们在 .NET 中的应用程序。我们的应用程序使用软件即服务模式进行销售。

我们跟踪软件中的所有用户操作以用于报告目的(搜索事物、下载 Assets 、填写表单、与他们正在创建的表单相关联的内容、用户个人资料的快照和登录时的详细信息等)。之前我们已经编写了一个非常健壮的跟踪逻辑来完成我们旧应用程序中的所有这些细节。

在我完成对 .NET 应用程序的初始重新设计之前,我想知道是否有人推荐他们过去实现的现成跟踪解决方案或开源跟踪系统,这些系统相当健壮。

更多详情 :
我们有很多需要跟踪的自定义数据(特定于我们的应用程序),并且我们的应用程序只能通过公司内部网站访问,因此不需要人们来自哪里的详细信息,因为我们已经知道这一点。

我计划跟踪页面点击量,以便在必要时重新创建用户的访问。

编辑(2009 年 11 月 20 日):似乎没有完全适合我的问题的现成解决方案,但我将用我们将在接下来的几周内实现的设计和方向来更新这个问题。因此,如果您对这个问题发生的事情感兴趣,请稍后再回来查看。

最佳答案

嗯...确实有您提到的三种不同类型的跟踪(登录)级别以及每种类型的不同工具。

在您的帖子中,您提到:

  • 跟踪用户访问的页面:
    对我来说,这将是 Web 服务器的功能。 IIS(我假设是 IIS,因为您说它是 .Net)将为您记录所有这些内容。有几种工具可以挖掘这些信息。
  • 商业交易:
    就像,用户打印了一份报告。用户运行了一个进程等。这些并不总是特定于任何数据更改。使用像 log4net 和 IoC 容器这样的工具将这种类型的日志注入(inject)到您的业务对象中会很有效。
  • 数据修改:
    这是数据级跟踪。有几种方法可以做到这一点。但是,我建议把它放在靠近数据库的地方。在 DAL 中执行此操作可能更容易一些,但如果有人在应用程序之外更改数据库中的数据怎么办。当然,在您的情况下,这可能是不可能的。我已经看到这是用触发器完成的。但是,添加了 SQL 2008
    change tracking内置。

  • 所以,我会说你需要所有三种工具的组合。也许您可以将所有数据合并到一个或两个表中以简化查看和挖掘它。

    关于.net - 跟踪用户在业务应用程序中的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1644909/

    相关文章:

    c# - 如何在远程计算机上运行 ClickOnce 应用程序 (.appref-ms)?

    .net - 哪些文件名占位符可用于 Serilog?

    c# - C# 4.0 的新功能 - "Optional Parameters"CLS 兼容吗?

    c# - 枚举 Dictionary.Values 与字典本身

    c# - 如何向 UserControl 添加属性?

    c# - Youtube Data API C# - 无需请求用户凭据即可使用

    c# - SSRS 检查用户是否在使用自定义程序集的组中

    c# - 从 POST 操作重定向到 POST 操作

    c# - 后台 worker 调用之间是否保留了线程本地存储?

    c# - 可视化编程语言控制