Vij*_*sal 5 java logging log4j log4j2
我的使用Log4j2作为日志记录实现的Java应用程序依赖于使用Log4j的第三方库。
我试图在我的应用程序中使用编程方式为这些第三方记录器设置root logger附加程序和日志级别(使用下面的代码),但是这些第三方库的记录器仍未记录到myAppender:
LoggerContext ctx = (LoggerContext) LogManager.getContext(false);
LoggerConfig loggerConfig = ctx.getConfiguration().getLoggerConfig(
LogManager.ROOT_LOGGER_NAME);
loggerConfig.addAppender(myAppender, Level.ERROR, null);
ctx.updateLoggers();
Run Code Online (Sandbox Code Playgroud)
我想到的一种解决方案是使用Log4jToSLF4JAdaptor将log4j的日志记录路由到SLF4J,然后使用Log4JSLF4JImpl将SLF4J的日志记录路由到我的Log4J2实现,但是如此处所述(https://logging.apache.org/log4j/2.0/log4j-slf4j- impl / index.html),这将导致路由无限。
您能否建议我如何将这些第三方库的记录器的日志记录路由到myAppender?
在这里得到了我的答案:Configuring log4j2 and log4j using a single log4j2 xml file
基本上,我们需要使用 log4j-1.2-api-2.0.jar 将应用程序对 log4-1.2 API 进行的所有调用路由到 log4j2 实现。
| 归档时间: |
|
| 查看次数: |
1874 次 |
| 最近记录: |