log4j2 pattern 行号_Log4j2进阶使用(Pattern Layout详细设置)

本文深入介绍了Log4j2的Pattern Layout,包括其灵活性、常用转换字符及其作用,如%d{HH:mm:ss.SSS}、%t、%level、%logger等,并给出了具体配置示例,帮助理解如何格式化输出日志信息。同时提到了特殊字符、格式修饰符的使用,以及L与l属性的区别。
摘要由CSDN通过智能技术生成

1.进阶说明

通过配置Layout打印格式化的日志,

Log4j2支持很多的Layouts:

CSV GELF HTML JSON Pattern Serialized Syslog XML YAML

本文仅介绍Pattern Layouts的详细使用。

本文基于Log4j2基本使用入门。

请先参考上面的基本使用入门。

2.Pattern Layouts

Pattern Layouts是一个灵活的布局,

是最常用的日志格式配置。

该类的目标是格式化一个日志事件并返回结果,

结果的格式取决于转换模式。

转换模式与c语言中printf函数的转换模式密切相关。

转换模式由称为转换说明符的文字文本和格式控制表达式组成。

注意,任何文字文本,包括特殊字符,都可能包含在转换模式中。

特殊字符包括\t、\n、\r、\f,使用\输出一个反斜杠。

每个转换说明符以百分号(%)开头,

后面是可选的格式修饰符和必填的转换字符。

格式修饰符控制字段宽度、填充、左对齐和右对齐等内容。

转换字符指定数据的类型,例如日期、线程名、日志级别、日志名称等等。

3.一个简单的例子

log4j2.xml中的PatternLayout配置:

对应输出的日志信息:

11:33:08.440 [main] FATAL org.apache.logging.log4j.Log4j2Test - fatal level log

详细对应关系:

数据类型

转换字符

输出日志日期

%d{HH:mm:ss.SSS}

11:33:08.440

线程名

%t

main

日志级别

%-5level

FATAL

日志名称

%logger{36}

org.apache.logging.log4j.Log4j2Test

日志信息

%msg

fatal level log

换行

%n

日志结束换行

另外配置中的空白字符和[]-等字符都是按照原样输出的。

4.PatternLayout参数

属性

说明charset

指定日志字符集

pattern

指定日志输出格式

alwaysWriteExceptions

默认为true,输出异常

header

可选项,包含在每个日志文件的顶部

footer

可选项,包含在每个日志文件的尾部

上面没有把全部参数列出来,

下面仅介绍pattern参数的详细配置。

5.pattern属性

pattern可以配置各种类型的转换字符,

转换字符又称为占位符,

在打印日志的时候会被替换为实际的值。

转换字符

说明c{precision}

logger{precision}

输出发布日志事件的日志程序的名称。

C{precision}

class{precision}

输出发出日志记录请求的调用者的完全限定类名,可能会影响性能,谨慎使用。

d{pattern}

date{pattern}

输出日志事件的日期。日期转换说明符后面可以跟一组大括号,其中包含每个Sim

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值