商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > Linux Java日志格式如何自定义

Linux Java日志格式如何自定义

  发布于2026-07-15 阅读(0)

扫一扫,手机访问

Linux环境下Ja va日志格式自定义指南

在Linux系统里折腾Ja va应用日志,算是日常操作了。日志格式对不对胃口,直接影响排查问题的效率。好在Ja va生态里那几个主流的日志框架——Log4j、Logback和ja va.util.logging——都提供了灵活的自定义方式。说白了就是改个配置文件的事儿。下面逐个聊聊它们的配置方法。

Linux Ja va日志格式如何自定义

Log4j:经典方案

Log4j的自定义方式很直观,就是修改log4j.propertieslog4j.xml这两个文件。比如一个典型的properties配置是这样的:

log4j.rootLogger=INFO, stdout
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=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

这里的ConversionPattern就是整个格式的灵魂。它定义了日志输出的组装方式:日期、日志级别、类名、行号,最后跟消息。你完全可以按自己的想法调整它们的前后顺序和分隔符。

Logback:更现代的选择

Logback的配置放在logback.xml里,语法上更接近XML的规范。一个典型的控制台输出配置如下:


    
        
            %d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n
        
    

    
        
    

和Log4j的思路类似,这里的标签直接定义了输出格式。不过语法上略有不同,比如Log4j的%p对应Logback的%level%c对应%logger。差异不大,但需要留意一下。

ja va.util.logging:JDK自带的方案

如果你不想引入额外依赖,就用JDK自带的ja va.util.logging。它的配置在logging.properties里:

handlers=ja va.util.logging.ConsoleHandler
ja va.util.logging.ConsoleHandler.level=ALL
ja va.util.logging.ConsoleHandler.formatter=ja va.util.logging.SimpleFormatter
ja va.util.logging.SimpleFormatter.format=%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS %4$s %2$s %5$s%6$s%n

这里的关键是SimpleFormatter.format这个属性,它使用了String.format的占位符语法。初看可能有点陌生,但本质上就是一组格式化参数,用来指定日志中每个字段的显示方式。

配置文件改好后,需要重启Ja va应用才能让新格式生效。这点别忘了。

本文转载于:https://www.yisu.com/ask/7954142.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注