在日志中添加运行时错误的源方法可以大大提高解决问题的效率,是调试大型项目的有用工具。例如,如果在日志追加器的%M
中设置了一些标志(例如PatternLayout
),Log4j可以将此信息添加到其日志中。
但是,Apache documentation of PatternLayout发出以下有关包含源方法名称的日志的警告:
警告生成来电者位置信息非常慢,应该避免,除非执行速度不是问题。
有没有人(有权威)体验在现实世界中这是多少?这种记录是否真的应该避免"鉴于它具有相当大的调试效益,它是否可以接受?
答案 0 :(得分:1)
你绝对不会想要热门代码。它可能会使用Exception的堆栈跟踪来完成它,这真的很慢。
Log4j具有可配置的日志记录级别。我建议您只在调试级日志记录中启用此功能。在正常操作期间应该避免这种情况。