java 日志推送,如何让java.util.logging发送日志到Logback?

我正在开发一个使用slf4j api记录的应用程序:

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

...

private static final Logger LOG = LoggerFactory.getLogger(FreemarkerEmailPreviewGenerator.class);

...

LOG.error("Error generating email preview", e);

(上面的代码贴出来显示正在使用的类和包,但非常标准的东西.)

我们使用如下配置的logback:

[%d{HH:mm:ss.SSS}] [%thread] [%-5level %logger{26} - %msg]%n

我们的一些代码使用了使用java.util.logging记录的第三方库 – 特别是freemarker.从下面的控制台日志条目中可以看到,logback和j.u.l都是登录到控制台,但是它们没有使用相同的配置(logback条目使用我们的模式,j.u.l不使用)

[12:24:38.842] [pool-2-thread-19] [INFO u.o.n.r.l.s.e.t.TemplateLoaderFromService - Finding template workflow/mail/templates/common/workflow-macros.ftl]

[12:24:38.859] [pool-2-thread-19] [INFO u.o.n.r.l.s.e.t.TemplateLoaderFromService - Loaded template workflow/mail/templates/common/workflow-macros.ftl as /workflow/mail/templates/common/workflow-macros.ftl from RegistryMailTemplateService.]

11-Jan-2017 12:24:38 freemarker.log.JDK14LoggerFactory$JDK14Logger error

SEVERE:

Expression domainContact is undefined on line 9, column 74 in workflow/mail/templates/common/workflow-macros.ftl.

The problematic instruction:

----------

==> ${domainContact.name} [on line 9, column 72 in workflow/mail/templates/common/workflow-macros.ftl]

是否有可能使j.u.l日志记录使用logback配置,以便我们为整个应用程序提供一个一致的日志记录配置?

最佳答案:

您的应用程序需要具有以下罐子:

申请 – > Freemarker – > java.util.logging – > SLF4J Api:jul-to-slf4j.jar

申请 – > SLF4J API:slf4j-api.jar

SLF4J API – > logback:logback-classic.jar和logback-core.jar

由于您的应用程序已经包含slf4j-api.jar和logback-classic.jar,您可能只需要添加jul-to-slf4j.jar

如果你使用maven:

org.slf4j

jul-to-slf4j

1.7.22

ch.qos.logback

logback-classic

1.1.8

logback classic将传递添加logback-core和slf4j-api

标签:java,logback,java-util-logging

来源: https://codeday.me/bug/20190516/1114436.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值