log4j的Appenders配置方法
发布时间 - 2026-01-11 00:54:42 点击率:次因为是刚开始使用log4j,很多配置方面的东西都不懂,记录下。

下面是我用STS(Spring Tool Suite)新建Spring MVC项目的时候,帮我自动生成的一个log4j.xml配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p: %c - %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="com.shanshan.test">
<level value="info" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- Root Logger -->
<root>
<priority value="warn" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
我要说的就是Appenders中的配置内容
输出方式:
| org.apache.log4j.ConsoleAppender | 控制台 |
| org.apache.log4j.FileAppender | 文件 |
| org.apache.log4j.DailyRollingFileAppender | 每天产生一个日志文件 |
| org.apache.log4j.RollingFileAppender | 文件大小到达指定尺寸的时候产生一个新的文件 |
| org.apache.log4j.WriterAppender | 将日志信息以流格式发送到任意指定的地方 |
PatternLayout配置:
|
配置 |
说明 | 举例 | ||
| %c | 输出所属的类目,通常就是所在类的全名。后面还可以带一个十进制的参数,限制输出类目的层级,默认输出完整类目。 | %c | org.apache.log4j.PatternLayout | |
| %c{2} | log4j.PatternLayout | |||
| %C | 调用logger的类的类目。后面还可以带一个十进制的参数,限制输出类目的层级,默认输出完整类目。 | %C | org.apache.log4j.PatternLayout | 处理较慢,谨慎使用 |
| %C{1} | PatternLayout | |||
| %d | 输出日志记录的时间,后面可以带日期格式的参数,参数编码默认为ISO8601,日期格式参考SimpleDateFormat | %d | 2017-04-18 09:23:56,561 | |
| %d{yyyy-MM-dd HH:mm:ss SSS} | 2017-04-18 09:23:56 561 | |||
| %d{ABSOLUTE} | 09:23:56,561 | |||
| %d{DATE} | 18 四月 2017 09:23:56,561 | |||
| %d{ISO8601} | 2017-04-18 09:23:56,561 | |||
| %F | 显示调用logger的源文件名 | HomeController.java | 处理较慢,谨慎使用 | |
| %l | 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数 | com.shanshan.bo.HomeController.border(HomeController.java:155) | ||
| %L | 显示调用logger的代码行数 | 处理较慢,谨慎使用 | ||
| %m | 输出代码中指定的信息 | |||
| %M | 显示调用logger的方法名 | main | 处理较慢,谨慎使用 | |
| %n | 当前系统下的换行符 | |||
| %p | 显示该条日志的优先级 | INFO | ||
| %r | 显示从程序启动时到记录该条日志时已经经过的毫秒数 | |||
| %t | 输出产生该日志事件的线程名 | tomcat-http--38 | ||
| %x | 按NDC(Nested Diagnostic Context,线程堆栈)顺序输出日志 | |||
| %X | 按MDC(Mapped Diagnostic Context,线程映射表)输出日志。通常用于多个客户端连接同一台服务器,方便服务器区分是那个客户端访问留下来的日志。 | |||
| %% | 输出一个百分号 | |||
通用格式配置:
| 配置 | 对齐方式 | 最小长度 | 最大长度 | 说明 |
| %20c | right | 20 | 若名字空间长度小于20,则左边用空格填充 | |
| %-20c | left | 20 | 若名字空间长度小于20,则右边用空格填充 | |
| %.30c | 30 | 若名字空间长度超过30,截去多余字符 | ||
| %20.30c | right | 20 | 30 | 若名字空间长度小于20,则左边用空格填充;若名字空间长度超过30,截去多余字符 |
| %-20.30c | left | 20 | 30 | 若名字空间长度小于20,则右边用空格填充;若名字空间长度超过30,截去多余字符 |
以上这篇log4j的Appenders配置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# log4j
# appenders配置
# log4j的配置文件详细解析
# 很详细的Log4j配置步骤
# log4j详细的常用配置说明介绍
# 类目
# 较慢
# 还可以
# 给大家
# 截去
# 客户端
# 行数
# 多个
# 帮我
# 不懂
# 一台
# 我用
# 希望能
# 刚开始
# 发送到
# 这篇
# 小编
# 自动生成
# 配置文件
# 启动时
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
免费网站制作appp,免费制作app哪个平台好?
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Java垃圾回收器的方法和原理总结
使用豆包 AI 辅助进行简单网页 HTML 结构设计
如何基于PHP生成高效IDC网络公司建站源码?
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
如何为不同团队 ID 动态生成多个“认领值班”按钮
Laravel路由怎么定义_Laravel核心路由系统完全入门指南
Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程
再谈Python中的字符串与字符编码(推荐)
如何在IIS中新建站点并配置端口与IP地址?
英语简历制作免费网站推荐,如何将简历翻译成英文?
如何在VPS电脑上快速搭建网站?
高防服务器租用指南:配置选择与快速部署攻略
Laravel如何使用Sanctum进行API认证?(SPA实战)
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
javascript中对象的定义、使用以及对象和原型链操作小结
如何在橙子建站上传落地页?操作指南详解
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
佛山企业网站制作公司有哪些,沟通100网上服务官网?
UC浏览器如何设置启动页 UC浏览器启动页设置方法
如何撰写建站申请书?关键要点有哪些?
如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】
微信小程序 五星评分(包括半颗星评分)实例代码
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
JavaScript常见的五种数组去重的方式
如何在腾讯云服务器上快速搭建个人网站?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
韩国服务器如何优化跨境访问实现高效连接?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
如何在香港服务器上快速搭建免备案网站?
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
SQL查询语句优化的实用方法总结
jQuery validate插件功能与用法详解
如何彻底卸载建站之星软件?
Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境
Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南
中山网站推广排名,中山信息港登录入口?
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
文字头像制作网站推荐软件,醒图能自动配文字吗?

