gpt4 book ai didi

c# - ASP.NET Web API 日志记录和跟踪

转载 作者:可可西里 更新时间:2023-11-01 09:07:24 28 4
gpt4 key购买 nike

一旦使用 log4net 为 ASP.NET Web API 设置了日志记录和跟踪设置,需要记录和/或跟踪的具体方面是什么?

我是专门从 Web API 的角度来问这个问题的。是否有一系列MUST Log thisMUST trace this。例如,INFO 跟踪 Controller 的请求、任何 NULL 检查等。

是否有可以验证的引用列表以确保 ASP.NET Web API 中的最佳日志记录和跟踪覆盖率?

最佳答案

所以我假设您的日志记录目标应该是调试应用程序而不是衡量性能。

虽然我认为对此没有一个“正确”的答案,但至少我总是会尝试记录

  • 每个日志行中的时间戳、类/函数名称和线程名称(如果您正在运行多线程应用程序)

  • 快速记录行@每个入口点,以及完整内容 传入的请求,最好采用能够实现的格式 您可以更轻松地从 fiddler 或类似软件重新发出相同的请求 工具(这可以通过自定义操作过滤器 - see how the author uses these for performance monitoring a web api app here 完成)

  • 如果您正在执行任何数据库查询作为操作的一部分,请记录 如果可能的话,完整的查询 sql 字符串(再次使它更容易 在调试期间重复)以及至少行数 返回

  • 如果您正在进行任何外部服务调用,请记录完整的 请求和响应字符串

  • 使用 try/catch block 记录任何异常(您也可以使用 像 ELMAH 库之类的东西可以自动执行此操作 比在代码中处理 - link herehere

  • 任何在运行时解决的问题——比如来自配置文件的值、数据库查询、计算值,也应该被记录下来

    我确定此列表中还缺少更多内容 - 毕竟这取决于您在应用程序中所做的事情。你应该在每一步都问自己——我的申请可能出了什么问题?在我发现调试问题时,我或将要解决这个问题的可怜的家伙会做些什么?

  • 关于c# - ASP.NET Web API 日志记录和跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19733136/

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