gpt4 book ai didi

log4net - log4NET 如何知道触发日志事件的行号

转载 作者:行者123 更新时间:2023-12-01 02:53:08 25 4
gpt4 key购买 nike

我很好奇 log4NET 如何使用 %L 来获取触发日志事件的行号。你能给我一些详细说明吗?

谢谢。

最佳答案

它使用堆栈跟踪,如 the log4net documentation 中所述。 .

请注意 lognet 文档中的警告:

  • 警告生成调用者位置信息非常慢。除非执行速度不是问题,否则应避免使用它。
  • 警告
    System.Diagnostics.StackTrace 类对发布版本有以下说明:

    “StackTrace 信息将最能提供调试构建配置的信息。默认情况下,调试构建包含调试符号,而发布构建不包含。调试符号包含构建 StackFrame 和使用的大部分文件、方法名称、行号和列信息。 StackTrace 对象。由于优化期间发生的代码转换,StackTrace 可能不会报告预期的那么多方法调用。”

    这意味着在发布版本中,调用者信息可能不完整或根本不存在!因此,在发布版本中不能依赖调用者位置信息。
  • 关于log4net - log4NET 如何知道触发日志事件的行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4117886/

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