文档章节

Log4j 入门

lemos
 lemos
发布于 2016/11/24 00:31
字数 442
阅读 7
收藏 0

原文地址

简介

Log4j 是一个使用java编写的日志框架。

Log4j 主要由三部分组成:

  • loggers:负责采集日志信息
  • appenders:负责将日志发送到不同的地方
  • layouts : 负责以各种风格格式化日志信息

配置

log4j 的配置文件是 Log4j.properties。模板:

# Define the root logger with appender file
Log4j.rootLogger = DEBUG, FILE

# Define the file appender
Log4j.appender.FILE=org.apache.Log4j.FileAppender
Log4j.appender.FILE.File=${log}/log.out

# Define the layout for file appender
Log4j.appender.FILE.layout=org.apache.Log4j.PatternLayout
Log4j.appender.FILE.layout.conversionPattern=%m%n

一、需要设置的属性:

  • Log4j.rootLogger:日志的级别

  • Log4j.appender.X:日志的输出目的地

  • Log4j.appender.X.layout:日志的布局

  • 其中: %m%n 表示 打印出来的日志信息末尾加入换行。

二、 appender

ConsoleAppender、 FileAppender、 JDBCAppende等

三、layout

PatternLayout、HTMLLayout、SimpleLayout、XMLLayout

四、 使用文件记录日志

log4j.properties

# Define the root logger with appender file
Log4j.rootLogger = DEBUG, FILE

# Define the file appender
Log4j.appender.FILE=org.apache.Log4j.FileAppender

# Set the name of the file
Log4j.appender.FILE.File=${log}/log.out

# Set the immediate flush to true (default)
Log4j.appender.FILE.ImmediateFlush=true

# Set the threshold to debug mode
Log4j.appender.FILE.Threshold=debug

# Set the append to false, overwrite
Log4j.appender.FILE.Append=false

# Define the layout for file appender
Log4j.appender.FILE.layout=org.apache.Log4j.PatternLayout
Log4j.appender.FILE.layout.conversionPattern=%m%n

或者 log4j.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE Log4j:configuration SYSTEM "Log4j.dtd">
<Log4j:configuration>

<appender name="FILE" class="org.apache.Log4j.FileAppender">

   <param name="file" value="${log}/log.out"/>
   <param name="immediateFlush" value="true"/>
   <param name="threshold" value="debug"/>
   <param name="append" value="false"/>

   <layout class="org.apache.Log4j.PatternLayout">
      <param name="conversionPattern" value="%m%n"/>
   </layout>
</appender>

<logger name="Log4j.rootLogger" additivity="false">
   <level value="DEBUG"/>
   <appender-ref ref="FILE"/>
</logger>

</Log4j:configuration>

逐日生成日志文件

log4j.properties

# Define the root logger with appender file
Log4j.rootLogger = DEBUG, FILE

# Define the file appender
Log4j.appender.FILE=org.apache.Log4j.DailyRollingFileAppender

# Set the name of the file
Log4j.appender.FILE.File=${log}/log.out

# Set the immediate flush to true (default)
Log4j.appender.FILE.ImmediateFlush=true

# Set the threshold to debug mode
Log4j.appender.FILE.Threshold=debug

# Set the append to false, should not overwrite
Log4j.appender.FILE.Append=true

# Set the DatePattern
Log4j.appender.FILE.DatePattern='.' yyyy-MM-dd-a

# Define the layout for file appender
Log4j.appender.FILE.layout=org.apache.Log4j.PatternLayout
Log4j.appender.FILE.layout.conversionPattern=%m%n

五、配置多个输出路径
log4j.perperties

log4j.rootLogger=DEBUG, stdout,logFile

# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

# 日志文件(logFile)
log4j.appender.logFile=org.apache.log4j.FileAppender
log4j.appender.logFile.Threshold=Error
log4j.appender.logFile.ImmediateFlush=true
log4j.appender.logFile.Append=TRUE
log4j.appender.logFile.File=E:/logs/log.out
log4j.appender.logFile.layout=org.apache.log4j.PatternLayout
log4j.appender.logFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n

© 著作权归作者所有

共有 人打赏支持
上一篇: mysql 的分页查询
下一篇: json - 解析选项
lemos
粉丝 7
博文 180
码字总数 91421
作品 0
芜湖
后端工程师
私信 提问
log4j+commons-logging结合使用

1.参考文献: Apache Commons-logging使用实例 Apache Log4j配置说明 log4j.properties配置详解 commons-logging结合Log4j的问题 Properties文件相关 Apache通用日志工具commons-logging和L...

飓风2000
2014/05/28
0
0
commons-logging 和 log4j 之间的关系

我们在做项目时,日志的记录是必不可少的一项任务,而我们通常是使用 apache 的 log4j 日志管理工具。然而,在项目中,我们经常会看到两个 jar 包:commons-logging.jar 和 log4j.rar。为什么...

飓风2000
2014/05/26
0
4
Apache Log4j 2.11.1 发布,流行的 Java 日志组件

Log4j 2.11.1 已发布,可用于生产环境。Log4j 2.11.1 是 Log4j 的最新版本,包含在 Log4j 2.6 发布后发现的几个错误修复,可以在最新的变更报告中找到修复内容列表。 要注意的是,Log4j 2 的...

淡漠悠然
07/31
0
0
Java Log4J 使用教程(java日志)

简介 2. 安装 3. log4j基本概念 3.1. Logger 3.2. Appender 3.2.1. 使用ConsoleAppender 3.2.2. 使用FileAppender 3.2.3. 使用WriterAppender 3.3. Layout 3.4. 基本示例 3.4.1. SimpleLayou......

lgxheartlikesea
2014/02/13
0
0
jboss log4j冲突分析与解决

Log4j作为日志组件被大多数的系统所使用,Jboss也不例外的采用了Log4j作为它的日志输出组件。 但在使用JBoss时,很多人经常碰到一些冲突,这些冲如自己配置的log4j文件无效,系统抛org.jboss...

职通网
2012/07/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

&和&&,==和equals的区别

&和&& 相同点:都可以表示逻辑与(and),当运算符两边的结果都为true时,结果才为true,只要有一边为false,结果就为false。 不同点:&&还有短路的作用,即如果第一个表达式的结果为false,就...

森林之下
18分钟前
1
0
我和 Spring 大神的一天

摘要: 先介绍一下故事的5位主人公。 Josh Long 龙之春:Spring 技术布道师,撰写过5部著作,录制过3部畅销的培训视频,是一位开源软件贡献者。 Spencer Gibb:Spring 技术布道师,Spring Cl...

阿里云官方博客
20分钟前
0
0
【Zookeeper】源码分析目录(保存)

https://www.cnblogs.com/leesf456/p/6518040.html

Java搬砖工程师
24分钟前
1
0
vue-cli图片路径使用

https://www.cnblogs.com/minigrasshopper/p/8011630.html

LM_Mike
24分钟前
1
0
前方高能,重要通知!明珠不蒙尘,有才你就来。

11月开源众包服务之星计划--开发商招募正式开启了! 您还是否在为能接更多的订单而操碎了心? 开源众包即将迎来三周年华诞,重磅上线服务之星品牌计划。你有强大的技术实力?你有丰富的案例经...

开源中国众包平台
26分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部