gpt4 book ai didi

spring - 自由配置文件控制日志记录

转载 作者:行者123 更新时间:2023-12-05 06:45:33 30 4
gpt4 key购买 nike

我无法控制我在 Websphere Liberty Profile 服务器中的代码的日志记录级别。我已将服务器上的 server.xml 配置为不记录 hibernate 和 spring,因为我的日志将被这两个框架的事件淹没。我通常使用 log4j 执行此操作,它在独立 WAS 中运行良好。

<logging consoleLogLevel="INFO" copySystemStreams="true" traceFormat="ENHANCED" traceSpecification="org.springframework.*=off:com.ibm.ws.*=off:org.hibernate*=off"/>

在 Liberty 中这是行不通的。当 liberty 更新配置时(当我保存带有更改的 server.xml 时),我得到以下日志:

[INFO ] TRAS0040I: The configured trace state included the following specifications that do not match any loggers currently registered in the server: org.hibernate*=off:org.springframework.*=off

基本上,此消息适用于我的任何代码和任何第三方代码(Spring、Hibernate 等)。但是,traceSpecification 级别对于 IBM 类工作正常,我能够指定 *=off,这有效地关闭了所有日志记录。

有人遇到过吗?IBM 的 TRAS0040I 文档看起来很简单,但我似乎无法弄清楚为什么我的记录器没有在服务器上注册。

最佳答案

Liberty 对日志记录没有丰富的控制。您应该了解“日志记录”和“跟踪”之间的区别。检查console.log、messages.log、trace.log文件开头的描述:http://www.ibm.com/support/knowledgecenter/SSEQTP_8.5.5/com.ibm.websphere.wlp.doc/ae/rwlp_logging.html

您在“traceSpecification”中的配置 - 实际上不会执行任何操作,因为 spring 和 hibernate 是来自 JVM 的日志并且它们不会进行跟踪,因此跟踪配置不会影响它们。

您可以为 jvm 日志自由配置的是 consoleLogLevel(INFO、AUDIT、WARNING、ERROR 和 OFF)

如果您想为 Liberty 中的特定组件配置日志级别 - 您应该使用例如带有自己配置的 log4j

关于spring - 自由配置文件控制日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23094071/

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