【问题标题】:Spring boot log4j pattern春季启动 log4j 模式
【发布时间】:2016-07-25 14:43:15
【问题描述】:

我正在从 logback 迁移到 log4j,我必须在 Spring Boot 中为 Log4j 复制默认配置。

这就是我目前所拥有的,但它看起来不像以前的。

log4j.category.org.springframework=INFO
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

我试图让它看起来像这样:

2014-03-05 10:57:51.112  INFO 45469 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/7.0.52
2014-03-05 10:57:51.253  INFO 45469 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2014-03-05 10:57:51.253  INFO 45469 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1358 ms
2014-03-05 10:57:51.698  INFO 45469 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean        : Mapping servlet: 'dispatcherServlet' to [/]
2014-03-05 10:57:51.702  INFO 45469 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean  : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]

配置文件在哪里,所以我可以检查模式和配置的其余部分,看看我缺少什么?

【问题讨论】:

    标签: spring-boot log4j


    【解决方案1】:

    这是您正在寻找的模式:

    "%d{yyyy-MM-dd HH:mm:ss.SSS}  %-4p %4L --- [%15.15t] %-40.40C : %m%n%wEx"
    

    你会得到你想要的。

    【讨论】:

    • 感谢分享这个模式!我需要对其进行一些更改以获得预期格式的类名:%d{yyyy-MM-dd HH:mm:ss.SSS} %-4p %4L --- [%15.15t] %-40.40c{1.} : %m%n%wEx
    【解决方案2】:

    Spring Boot Default Logback Configuration

    private static final String CONSOLE_LOG_PATTERN = "%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} "
                + "%clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} "
                + "%clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} "
                + "%clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}";
    

    【讨论】:

    • 你能提示一下如何只为日志级别着色。例如:错误为红色,信息为白色等?
    • 链接已过期(404)
    • @valijon 已更新永久链接
    【解决方案3】:

    你可以从org.apache.log4j.PatternLayout找到详细解释PatternLayout的指南

    有一个样本,也许你能得到一些启发。

    <layout class="org.apache.log4j.EnhancedPatternLayout">
        <param name="ConversionPattern" value="%-5p %d{yyyy-MM-dd/HH:mm:ss.SSS}{UTC} [%t] %c{1} -|%-5X{requestId}|- %m%n" />
    </layout>
    

    应用日志喜欢:

    INFO 2016-07-21/12:14:49.613 [http-nio-9040-exec-9] QrCodeTestController -|29909|- BufferedImage 是 BufferedImage@2e5adf04: type = 5 ColorModel: #pixelBits = 24 numComponents = 3颜色空间 = java.awt.color.ICC_ColorSpace@4996a909 透明度 = 1 有 alpha = false isAlphaPre = false ByteInterleavedRaster: width = 556 height = 776 #numDataElements 3 dataOff[0] = 6782

    【讨论】:

      猜你喜欢
      • 2019-05-23
      • 2017-09-11
      • 2015-04-18
      • 2017-06-24
      • 2015-08-22
      • 2015-09-18
      • 2015-03-20
      • 2018-01-24
      • 2016-08-22
      相关资源
      最近更新 更多