SLF4J:避免使用完全限定的类名称

问题描述 投票:4回答:1

对你们来说这很容易!

如何防止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,那真是太棒了。

java logging slf4j
1个回答
5
投票

根据APISimpleLogger,您可以尝试将org.slf4j.simpleLogger.showShortLogName实例的LOGGER属性设置为true

从API:

org.slf4j.simpleLogger.showShortLogName-如果需要,设置为true输出消息中包含的名称的最后一个组成部分。默认值到false

© www.soinside.com 2019 - 2024. All rights reserved.