首页 > 解决方案 > 指定无效日志级别时如何在 slf4j logback.xml 中设置默认日志级别

问题描述

有类似以下的可用吗?

<logger name="mylogger" level="ERROR" defaultLevel="INFO">

因此,当有人在运行时使用无效的日志级别更改记录器配置时(例如:在拼写错误的情况下),它应该使用 loglevel INFO 进行记录。

请指教。

标签: javalogbackslf4j

解决方案


是的,你可以这样做,但你需要这样做。

这是来自 Log4j 的代码片段,如果提供无效日志,将设置为您指定的默认值

public static Level toLevel(int val, Level defaultLevel) {
    switch(val) {
    case -2147483648:
        return ALL;
    case 5000:
        return TRACE;
    case 10000:
        return DEBUG;
    case 20000:
        return INFO;
    case 30000:
        return WARN;
    case 40000:
        return ERROR;
    case 50000:
        return FATAL;
    case 2147483647:
        return OFF;
    default:
        return defaultLevel;
    }

推荐阅读