在Scala应用程序中登录的好方法是什么?与语言哲学一致的东西,不会使代码混乱,并且维护成本低且不引人注目.这是一个基本要求清单:
我知道我可以使用现有的Java日志记录解决方案,但它们至少在上面的两个方面失败了,即混乱和配置.
谢谢你的回复.
在Java中,日志记录的标准习惯用法是为记录器对象创建一个静态变量,并在各种方法中使用它.
在Scala中,看起来成语是用记录器成员创建Logging特征并在具体类中混合特征.这意味着每次创建对象时,它都会调用日志框架来获取记录器,并且由于附加引用,对象也会变大.
是否有一种替代方案可以在仍然使用每类记录器实例时轻松使用"with Logging"?
编辑:我的问题不是关于如何在Scala中编写日志框架,而是如何使用现有的(log4j)而不会产生性能开销(获取每个实例的引用)或代码复杂性.另外,是的,我想使用log4j,因为我将使用可能使用log4j的Java编写的第三方库.