这对你们这些人来说很容易!
如何阻止SLF4J显示完全限定的类名(例如com.mycompany.mypackage.MyObject)并只输出MyObject?
我通常更喜欢这个:
1)
private static final Logger LOGGER = LoggerFactory
.getLogger(MyObject.class);
到此:
2)
private static final Logger LOGGER = LoggerFactory
.getLogger("MyObject");
这样当我将MyObject重构/重命名为MyThing时,引用会自动更新。
然而...... 1)我得到了笨拙的输出:com.mycompany.mypackage.MyObject
我只需要在日志中看到MyObject ......
可选:如果您知道如何根据日志级别选择性地对输出进行颜色输出(例如\e[0;33m
),那将非常有用。
答案 0 :(得分:4)
根据SimpleLogger
的{{3}},您可以尝试将org.slf4j.simpleLogger.showShortLogName
个实例的LOGGER
属性设置为true
。
来自API:
org.slf4j.simpleLogger.showShortLogName - 如果你想要的话,设置为true 要包含在输出消息中的名称的最后一个组件。默认 为假。