gpt4 book ai didi

logging - 无法识别 log4j2 配置文件

转载 作者:行者123 更新时间:2023-12-04 19:06:56 32 4
gpt4 key购买 nike

我正在尝试在我的 Geb 框架中设置 log4j2。对于我的生活,我无法弄清楚如何将它们放在一起。我使用记录器“Selenium”设置了一个 log4j2.xml(不是 log4j.xml)文件。在 DefaultPage 中,我尝试从配置文件 LogManager.getLogger("Selenium") 中获取名称为 Selenium 的 Logger .

log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="TRACE">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Logger name="Selenium" level="TRACE">
<AppenderRef ref="Console"/>
</Logger>
<Root level="TRACE">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>

默认页面.groovy
class DefaultPage extends geb.Page {
static content = {
pageId(wait: true) { $("meta", name: "pageId").getAttribute("content") }
pageHeading(wait: true) { $("meta", name: "heading").getAttribute("content") }
}

static final Logger logger = LogManager.getLogger("Selenium")

/**
* Uses jquery to create a mouseover on an element
* @param element The jquery element created in the page object.
*/
static def mouseOver(element) {
logger.error("Hovering over ${element}")
element.jquery.mouseover()
}
}

测试执行并将输出写入 STDERR,这是预期的,因为我有 logger.error。但是,它不保存日期格式。此外,我还有其他类使用 .info 调用这个记录器,而那些在 STDOUT 中看不到。当我调试记录器的级别是错误,而不是跟踪。

这是我的文件结构:
functional
|
--src
|
|--test
|
|--groovy
| |
| |--com.x.functional
| |
| |--pages
| |
| |--DefaultPage.groovy
| |--Other classes that want to use log4j2.
|
|--resources
|
|--log4j2.xml

谢谢你。

编辑
将 log4j 更改为 log4j2。添加配置状态 = TRACE。使用“,”而不是“.”修改毫秒的日期格式

最佳答案

Log4J2 将查找名为 log4j2.xml 的配置文件在类路径中。如果它找不到这个文件,它会尝试一些替代方案(参见配置手册页),但是 log4j.xml默认不识别。 (可以告诉 log4j2 将一些指定的文件作为配置: http://logging.apache.org/log4j/2.x/faq.html#config_location )

如果未找到配置文件,则会安装默认配置,将 ERROR 和更高的事件记录到 StdErr。

我怀疑这就是正在发生的事情。解决此问题的最简单方法是重命名您的配置文件 log4j2.xml并将其放在类路径中。然后,您可以通过指定 <Configuration status="trace"> 来启用 log4j2 内部日志记录。必要时进一步排除故障。

关于logging - 无法识别 log4j2 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22107849/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com