我将SLF4J与LOG4J一起使用,并且配置通常在中log4j.properties
,并且它将日志级别设置为INFO。
但是,在测试期间,我想将日志设置为DEBUG。
我看不到一种自动执行此操作的方法,也无法让类似的内容log4j.tests.properties
仅在测试期间加载。
因此,我尝试在测试设置(@BeforeClass)中以编程方式执行此操作:
LogManager.getRootLogger().setLevel(Level.ALL);
没有成功…
我正在使用以下版本:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.5</version>
</dependency>
我怎样才能达到这个结果?
编辑:
我认为我还不够清楚。这个问题不是关于设置正确的日志级别…而是关于在运行Junit测试时设置DEBUG日志级别,以及在任何其他情况下设置INFO日志级别。我想使它自动化。
您无需为JVM提供其他日志实现。
日志记录代码log4j.properties
使用类路径搜索文件。因此,您需要做的就是确保测试log4j.properties
文件位于发布文件之前的位置。
我使用Maven,它使目录中的文件布局变得容易。我的发布log4j.properties
在目录中src/main/resources
。我的测试版本进入src/test/resources
。Eclipse构建路径(classpath)设置为src/test/resources
在之前搜索src/main/resources
,因此您的单元测试使用测试文件。JAR(或WAR)构建说明使用中的文件src/main/resources
。
有人能帮我设置日志级别以调试和捕获更多日志所需的spark配置吗
问题内容: 我目前正在使用log4j的项目中。我正在运行一个测试用例(junit),并希望将日志级别设置为跟踪,以便我可以查看所有值是否正确。在项目中使用日志记录的类包含如下一行: 并使用类似这样的命令进行实际调试 我以前从未使用过log4j,有人知道我该如何仅为测试用例更改日志级别,最好仅通过在Eclipse的运行配置对话框中定义一个参数即可。 问题答案: 使用另一个配置文件 也许您可以指向另一
我在spring应用程序中使用log4j2作为我的日志工具。我想为特定的库/包设置不同于根目录的日志级别。例如,我希望< code>org.springframework为INFO,而< code>com.google为WARN。我在< code>log4j2.properties中找到了这个: 我不明白是什么意思?我一直在log4j2文档中找到它,但没有解释那是什么或意味着什么。 如何为特定包添
我想更改我的Quarkus应用程序的日志记录级别。 如何从配置文件或运行时执行此操作?
使用log4j1,我能够控制单个日志记录程序级别,但属性语句似乎不能使用log4j2。我将rootLogger级别设置为DEBUG,并希望通过commons-logging抑制来自authorize.NET的大量调试日志。我正在尝试设置级别,以从http头和有线日志发出警告。 下面是详细配置记录器的log4j文档(参见“配置log4j”) 这是一个示例日志输出: 这是我当前的log4j2.prop