我使用 slf4j 1.7.2 和 logback 1.0.7。我希望能够为我的 Java 应用程序提供一个命令行参数,用于设置记录到标准输出的消息级别。例如,-logLevel trace应该记录所有消息,但-logLevel warning只记录警告和错误。日志应该来自应用程序中的所有记录器(= 根记录器)。
目前我有一个ConsoleAppenderfor System.out,通过 确保TresholdFilter只有info warning和error消息被打印到标准输出。根记录器引用它。我不知道如何以编程方式更改此附加程序的过滤级别,我需要将记录的级别基于命令行参数。
虽然记录到标准输出的级别应该受到影响,但我仍然希望根记录器记录所有级别,因为它们被发送到其他附加程序,例如diagnostics.txt应该始终具有所有级别的文件。
干杯!
康拉德