“Log4j 的 layout 配置”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) (建立内容为“https://www.bilibili.com/video/BV1iJ411H74S?p=14”的新页面) |
Jihongchang(讨论 | 贡献) |
||
| 第1行: | 第1行: | ||
https://www.bilibili.com/video/BV1iJ411H74S?p=14 | https://www.bilibili.com/video/BV1iJ411H74S?p=14 | ||
| + | {| class="wikitable" | ||
| + | !格式化器类型 | ||
| + | !作用 | ||
| + | |- | ||
| + | |HTMLLayout | ||
| + | |格式化日志输出为 HTML 表格形式 | ||
| + | |- | ||
| + | |SimpleLayout | ||
| + | |简单的日志输出格式化,打印的日志格式为(info - message) | ||
| + | |- | ||
| + | |PatternLayout | ||
| + | |最强大的格式化器,可以根据自定义格式输出日志,如果没有指定转换格式, | ||
| + | 就使用默认的转换格式 | ||
| + | |} | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | === Layout 的格式 === | ||
| + | 在 log4j.properties 配置文件中,我们定义了日志输出级别与输出端,在输出端中分别配置日志的输出格式。 | ||
| + | |||
| + | <nowiki>*</nowiki>log4j 采用类似 C 语言的 printf 函数的打印格式格式化日志信息,具体的占位符及其含义如下: | ||
| + | {| class="wikitable" | ||
| + | |%m | ||
| + | |输出代码中指定的日志信息 | ||
| + | |- | ||
| + | |%p | ||
| + | |输出优先级,即 DEBUG、INFO 等 | ||
| + | |- | ||
| + | |%n | ||
| + | |换行符(Windows 平台的换行符为“\r\n”,Unix 平台为 “\n”) | ||
| + | |- | ||
| + | |%r | ||
| + | |输出自应用启动到输出该 log 信息的毫秒数 | ||
| + | |- | ||
| + | |%c | ||
| + | |输出打印语句所属的类的全名 | ||
| + | |- | ||
| + | |%t | ||
| + | |输出产生该日志的线程全名 | ||
| + | |- | ||
| + | |%d | ||
| + | |输出服务器当前时间,默认为 ISO8601,也可以指定格式,如:%d{yyyy年MM月dd日 HH:mm:ss} | ||
| + | |- | ||
| + | |%l | ||
| + | |输出日志事件发生的位置,包括类名、线程、及在代码中的行数。如:Test.main(Test.java:10) | ||
| + | |- | ||
| + | |%F | ||
| + | |输出日志消息产生时所在的文件名称 | ||
| + | |- | ||
| + | |%L | ||
| + | |输出代码中的行号 | ||
| + | |- | ||
| + | |%% | ||
| + | |输出一个“%”字符 | ||
| + | |} | ||
2023年2月24日 (五) 08:03的版本
https://www.bilibili.com/video/BV1iJ411H74S?p=14
| 格式化器类型 | 作用 |
|---|---|
| HTMLLayout | 格式化日志输出为 HTML 表格形式 |
| SimpleLayout | 简单的日志输出格式化,打印的日志格式为(info - message) |
| PatternLayout | 最强大的格式化器,可以根据自定义格式输出日志,如果没有指定转换格式,
就使用默认的转换格式 |
Layout 的格式
在 log4j.properties 配置文件中,我们定义了日志输出级别与输出端,在输出端中分别配置日志的输出格式。
*log4j 采用类似 C 语言的 printf 函数的打印格式格式化日志信息,具体的占位符及其含义如下:
| %m | 输出代码中指定的日志信息 |
| %p | 输出优先级,即 DEBUG、INFO 等 |
| %n | 换行符(Windows 平台的换行符为“\r\n”,Unix 平台为 “\n”) |
| %r | 输出自应用启动到输出该 log 信息的毫秒数 |
| %c | 输出打印语句所属的类的全名 |
| %t | 输出产生该日志的线程全名 |
| %d | 输出服务器当前时间,默认为 ISO8601,也可以指定格式,如:%d{yyyy年MM月dd日 HH:mm:ss} |
| %l | 输出日志事件发生的位置,包括类名、线程、及在代码中的行数。如:Test.main(Test.java:10) |
| %F | 输出日志消息产生时所在的文件名称 |
| %L | 输出代码中的行号 |
| %% | 输出一个“%”字符 |