gpt4 book ai didi

java - 如何控制第 3 方库中的日志记录

转载 作者:搜寻专家 更新时间:2023-11-01 03:35:18 26 4
gpt4 key购买 nike

我有一个运行基于 Spring 的 servlet 的 Tomcat 服务器。

我设置了[project root]/src/log4j.properties 文件如下:

# Root logger option
log4j.rootLogger=WARN, stdout

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p %d{HH:mm:ss} %m [%c{3}:%L]%n

log4j.logger.com.martincarney.bugTracker=DEBUG
log4j.logger.com.martincarney.bugTracker.controller=ERROR

这正确地记录了我自己的代码,但似乎对我正在使用的各种库中的日志记录没有任何影响。例如,即使我添加 log4j.logger.org.apache=WARN 到我的 log4j.properties。

我正在使用通过 Maven 获得的 slf4j-apislf4j-log4j jar。

如何在我自己的代码之外控制日志记录级别和目标?

最佳答案

一些库使用其他日志记录框架,如 java.util.logging

您可以使用 SLF4J 重定向日志记录, 请参阅 SLF4J - Bridging legacy APIs :

Jakarta Commons 日志的重定向:

To ease migration to SLF4J from JCL, SLF4J distributions include the jar file jcl-over-slf4j.jar. This jar file is intended as a drop-in replacement for JCL version 1.1.1. It implements the public API of JCL but using SLF4J underneath, hence the name "JCL over SLF4J."

java.util.Logging 的重定向(SLF4J API):

Installation via logging.properties configuration file:

// register SLF4JBridgeHandler as handler for the j.u.l. root logger

handlers = org.slf4j.bridge.SLF4JBridgeHandler

有关 java.util.Logging 的配置,请参阅 JUL API .

Apache CXF 等一些库支持不止一种日志框架,参见 Apache CXF - Debugging and Logging .

关于java - 如何控制第 3 方库中的日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33890249/

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