gpt4 book ai didi

c# - 跟踪 asp.net mvc 网站的用户事件/操作?

转载 作者:太空狗 更新时间:2023-10-29 20:18:59 27 4
gpt4 key购买 nike

我想为我的 Web 应用程序的所有用户保留每个页面 View 的日志。经过足够的时间后,我将使用该日志生成报告。我想让日志记录机制灵活一些,因为我不需要记录每个 http 请求。

一个示例用例是:一家公司注册了我的网络应用程序并允许 5 名员工使用该应用程序。我想报告上周有 3 名员工使用了该应用程序。或显示有 4 名员工在当年 6 月至 8 月期间使用过它。

我正在将 asp.net mvc 与 sql server 一起使用,如果这会有所不同的话。

就这么简单吗?创建一个包含以下列的 sql 表:UserId、ControllerName、ActionName、ActionParameters、CreatedOn。然后创建一个 ActionFilterAttribute,为调用的每个操作向数据库添加一条记录。

是否有任何我应该担心的陷阱(除了可能很大的表大小)?

最佳答案

一些陷阱:

  1. 您将无法进行任何服务器级别的页面缓存。
  2. 很多数据库写入,因为您实际上是在记录每个请求。
  3. 如果在页面上发生任何操作,您可能会存储冗余信息。

我假设你会在某种类型的自定义 AuthorizeAttribute 中实现它,这样你就不会在每个 Controller 上对其进行编码,但实际上每个请求都可能比你实际需要的多。

您是否考虑过使用某种类型的 IIS 日志解析实用程序?它已经包含了您需要的大量信息。

关于c# - 跟踪 asp.net mvc 网站的用户事件/操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1514616/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com