【发布时间】:2018-07-31 13:41:03
【问题描述】:
我在下面的代码中使用 slf4j 工厂创建不同的 log4j2 记录器对象,我需要根据输入参数写入特定的日志文件。
@Service
class WriterService {
val logger1: Logger = LoggerFactory.getLogger("t_logger")
val logger2: Logger = LoggerFactory.getLogger("b_logger")
val labelKey = "Label"
fun writeLog(payload: Map<String, Any>){
if(payload.containsKey(labelKey)) {
val label = payload[labelKey].toString().toLowerCase()
if (label == "t") {
logger1.info("{}", payload)
} else if (label == "b") {
logger2.info("{}", payload)
}
}
}
我想知道如何使用 MockitoJUnitRunner 模拟 Logger 对象,以便模拟调用了哪个记录器对象?
【问题讨论】:
标签: spring-boot junit kotlin slf4j log4j2