该类的目标是格式化LogEvent并返回(字符串)结果。结果的格式取决于具体的模式字符串(pattern string)。这里的模式字符串与c语言中printf函数的转换模式非常相似。模式字符串由“转换说明符”和“格式控制表达式”组成。( \t, \n, \r, \f都可以应用在pattern string里,\\表示单个反斜杠)

每个转换说明符以百分号(%)开头,然后是可选的格式修饰符和转换字符。转换字符指定数据类型,例如类别、优先级、日期、线程名称等。格式修饰符控制字段宽度、填充、左对齐和右对齐。通过设置Automatic Reconfiguration可以方便地实时修改输出内容、格式。

例如%m%n通常作为默认的pattern。(\n和%n都可以表达换行,%m则表示原消息字符串)

当模式为%m%n时,logger.debug("Message 1");的输出为Message 1

保持logger.debug("Message 1");不变动态修改模式字符串。修改为%-5p [%t]: %m%n输出是DEBUG [http-nio-8080-exec-8]: Message 1(%p代表logger优先级,%t表示线程名,-5表示左对齐至少占5个字符宽)

如果模式字符串不包含用于处理被记录的Throwable的说明符,模式的解析就会表现得像%xEx说明符被添加到模式字符串末尾一样。要完全禁止Throwable的格式化,只需在模式字符串中添加%ex{0}作为说明符。

详尽的文档:https://logging.apache.org/log4j/2.x/manual/layouts.html#PatternLayout

log4j2笔记 #03# PatternLayout的更多相关文章

  1. 《30天自制操作系统》笔记(03)——使用Vmware

    <30天自制操作系统>笔记(03)——使用Vmware 进度回顾 在上一篇,实现了用IPL加载OS程序到内存,然后JMP到OS程序这一功能:并且总结出下一步的OS开发结构.但是遇到了真机测 ...

  2. JS自学笔记03

    JS自学笔记03 1.函数练习: 如果函数所需参数为数组,在声明和定义时按照普通变量名书写参数列表,在编写函数体内容时体现其为一个数组即可,再传参时可以直接将具体的数组传进去 即 var max=ge ...

  3. 机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理、源码解析及测试

    机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理.源码解析及测试 关键字:决策树.python.源码解析.测试作者:米仓山下时间:2018-10-2 ...

  4. CS229 笔记03

    CS229 笔记03 局部加权线性回归 Non-Parametric Learning Algorithm (非参数学习方法) Number of parameters grows with the ...

  5. OpenCV 学习笔记03 边界框、最小矩形区域和最小闭圆的轮廓

    本节代码使用的opencv-python 4.0.1,numpy 1.15.4 + mkl 使用图片为 Mjolnir_Round_Car_Magnet_300x300.jpg 代码如下: impor ...

  6. OpenCV 学习笔记03 findContours函数

    opencv-python   4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...

  7. C++ GUI Qt4学习笔记03

    C++ GUI Qt4学习笔记03   qtc++spreadsheet文档工具resources 本章介绍创建Spreadsheet应用程序的主窗口 1.子类化QMainWindow 通过子类化QM ...

  8. SaToken学习笔记-03

    SaToken学习笔记-03 如果排版有问题,请点击:传送门 核心思想 所谓权限验证,验证的核心就是一个账号是否拥有一个权限码 有,就让你通过.没有?那么禁止访问! 再往底了说,就是每个账号都会拥有一 ...

  9. Redis:学习笔记-03

    Redis:学习笔记-03 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 7. Redis配置文件 启动 ...

随机推荐

  1. [sh]shift参数左移用法

    shift概述 https://blog.csdn.net/wangjianno2/article/details/48879641 1.shell脚本中的位置参数 shell脚本中的位置参数有两种: ...

  2. Python socketserver模块解析

    参考:https://blog.csdn.net/qq_33733970/article/details/79153938 1.功能简介 socketserver模块是对socket模块的再封装,用于 ...

  3. Angular1和Aangular4剖析

    字面解析: 1.Angular1又名angularJs,从angular2,angular4都不带JS 2.变化:angular2跳转到angular4 架构: 1.angular1是基于MVC 2. ...

  4. SDWebImage代码赏析

    过NSOperationQueue来控制 为了保护变量,使用大量了sychronized 读的时候使用了dispatch_sync dispatch_sync(sself.barrierQueue, ...

  5. iOS 第三方框架-Masonry

    介绍地址:http://www.cocoachina.com/ios/20141219/10702.html 官网:https://github.com/SnapKit/Masonry 记住:一定要先 ...

  6. UI界面之淡入淡出

    1.using UnityEngine; using System.Collections; using UnityEngine.UI; public class danrudanchu : Mono ...

  7. 参考termux中包管理命令的伪装修改的arch版包管理命令

    #!/bin/bash set -e -u show_help() { echo "This help message is useless, please read the content ...

  8. springboot整合webSocket的使用

    引入jar包 <dependency><!-- 5.引入websocket--> <groupId>org.springframework.boot</gro ...

  9. python中的IO操作

    python中的基本IO操作: 1) 键盘输入函数:raw_input(string),不作处理的显示,与返回. input(string),可以接受一个python表达式作为返回,python内部得 ...

  10. lua元表学习

    a = {, } b= {, } vector2 = {} function vector2.Add(v1, v2) if(v1 == nil or v2 == nil)then return nil ...