当我遇到“访问记录器”时,我正在阅读Play Framework中的记录器。 Access Logger优于Play.Logger的优势是什么? 我试着从Play文档中了解到但是不太了解。任何人都可以提供文章或材料来理解吗?
答案 0 :(得分:2)
documentation非常清楚
尽管在任何地方使用默认记录器可能很诱人,但它确实如此 一般来说是糟糕的设计实践使用创建自己的记录器 不同的名称允许灵活配置,过滤日志 输出,并精确定位日志消息的来源。
您可以使用Logger.of工厂方法创建一个新的记录器 name参数:
final Logger.ALogger accessLogger = Logger.of("access");
一个常见的 记录应用程序事件的策略是使用不同的记录器 每个类使用类名。日志API支持这一点 采用类参数的工厂方法:
final Logger.ALogger logger = Logger.of(this.getClass());
因此,创建一个命名记录器可以让您以不同方式配置它。您可以在conf\logback.xml
中执行此操作。例如,您可以关闭某些类的日志记录并保留其他类:
<!-- Off these ones as they are annoying, and anyway we manage configuration ourselves -->
<logger name="com.avaje.ebean.config.PropertyMapLoader" level="OFF" />
<logger name="com.avaje.ebeaninternal.server.core.XmlConfigLoader" level="OFF" />
<logger name="com.avaje.ebeaninternal.server.lib.BackgroundThread" level="OFF" />
<logger name="com.gargoylesoftware.htmlunit.javascript" level="OFF" />