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入门  文字头像制作网站推荐软件,醒图能自动配文字吗?