使用 SLF4J 时如何动态选择消息的日志记录级别?

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

使用SLF4J时如何动态选择日志消息级别?是否可以?我想避免编写这样的代码

String message = "message";
if (someCondition) {
    log.info(message);
} else if (someOtherCondition) {
    log.warn(message);
} // and potentially even more ifs

这样就更好了(代码是编造的,这样的方法实际上并不存在)

String message = "message";
log.log(message, levelProvider::getLoggingLevel);

请注意,这个问题不是关于设置整个记录器的日志记录级别

java logging slf4j
1个回答
0
投票

我想你想用

Logger.atLevel(Level)
来获得
LoggingEventBuilder
。然后您可以致电
log(String)
。就像,

logger.atLevel(levelProvider.getLoggingLevel()).log(message);
© www.soinside.com 2019 - 2024. All rights reserved.