我有一个项目,其中包含一些使用org.slf4j.Logger记录一些信息的类。所有其他类中的记录器工作正常并打印完整的类名,例如 INFO com.myapp.gca.servlet.LoginServlet - Entering login
.但是对于一个类,它不会打印完整的类名,例如 INFO c.m.gca.servlet.HealthCheckServlet - GCA health check OK
,其中com.myapp.
被c.m.
替换。
我找不到这个特定班级与其他班级的任何区别。记录器的定义如下
private static Logger log = LoggerFactory.getLogger(HealthCheckServlet.class);
可能是什么原因?
请参阅官方文档中的转换字表。由于包和类名的组合长度,您必须将记录器配置为至少 40
的长度:
%logger{40}
但是,始终提供全名的%logger
会更好。
在 logback.xml 中使用 %logger{26} 模式。
有关更多详细信息,请参阅此链接。
https://logback.qos.ch/manual/layouts.html