使⽤idea通过maven管理⼯具,完成⽇志在控制台的输出并将⽇志信息输出到⽂
件
刚学会关于⽇志的使⽤,现在记录下来.
1.导包:
<!--⽇志包-->
<!-- mvnrepository/artifact/commons-logging/commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>${commons-logging.version}</version>
</dependency>
<!-- mvnrepository/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>idea debug
<!-- mvnrepository/artifact/org.slf4j/slf4j-log4j12 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j-log4j12.version}</version>
</dependency>
2.创建配置⽂件log4j.properties
#第⼀个参数为⽇志的优先级,分为OFF,FATAL,ERROR,WARN,INFO,DEBUG,ALL或者⾃定义的级别,但是只建议使⽤四个级别,从⾼到低依次是ERROR,WARN, INFO,DEBUG,选择INFO表⽰看不到DEBUG级别的⽇志信息;
#后⾯的参数个数⾃定义,名称⾃定义,表⽰⽇志的输⼊位置名称,如下则表⽰输出到控制台和⽂件中
#Log4j提供的appender有以下⼏种:
# 1.org.apache.log4j.ConsoleAppender(控制台)
# 2.org.apache.log4j.FileAppender(⽂件)
# 3.org.apache.log4j.DailyRollingFileAppender(每天产⽣⼀个⽇志⽂件)
# 4.org.apache.log4j.RollingFileAppender(⽂件⼤⼩到达指定尺⼨时产⽣⼀个新的⽂件)
# 5.org.apache.log4j.WriterAppender(将⽇志信息以流格式发送到任意指定的位置)
#定义⽇志输出⽬的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
# Target的值有;System.out
# 默认情况下是System.out,指定输出到控制台
log4j.appender.Console.Target=System.out
#⽇志输出在控制台时的编码格式,若包含中⽂,建议使⽤gbk(utf-8可能乱码)
log4j.appender.Console.Encoding=gbk
# Log4j提供的layout有以下⼏种:
# 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局)
# 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
# 3.org.apache.log4j.SimpleLayout(包含⽇志信息的级别和信息字符串)
# 4.org.apache.log4j.TTCCLayout(包含⽇志产⽣的时间、线程、类别等信息)
#可以灵活地指定⽇志输出格式,下⾯⼀⾏是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
# 设置具体的⽇志格式
#%m 输出代码中指定的消息
#%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
#%r 输出⾃应⽤启动到输出该log信息耗费的毫秒数
#%c 输出所属的类⽬,通常就是所在类的全名
#%t 输出产⽣该⽇志事件的线程名
#%n 输出⼀个回车换⾏符,Windows平台为“\r\n”,Unix平台为“\n”
#%d 输出⽇志时间点的⽇期或时间,默认格式为ISO8601,也可以在其后指定格式,⽐如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2019年05⽉07⽇ 1 4:10:28,110
#%l 输出⽇志事件的发⽣位置,包括类⽬名、发⽣的线程,以及在代码中的⾏数。举例:Testlog4.main(TestLog4.java:10)
# 可以在%与模式字符之间加上修饰符来控制其最⼩宽度、最⼤宽度、和⽂本的对齐⽅式。如:
# 1)%20c:指定输出category的名称,最⼩的宽度是20,如果category的名称⼩于20的话,默认的情况下右对齐。
# 2)%-20c:指定输出category的名称,最⼩的宽度是20,如果category的名称⼩于20的话,"-"号指定左对齐。
# 3)%.30c:指定输出category的名称,最⼤的宽度是30,如果category的名称⼤于30的话,就会将左边多出的字符截掉,但⼩于30的话也不会有空格。
# 4)%20.30c:如果category的名称⼩于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远输出的字符截掉。
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n
#⽂件⼤⼩到达指定尺⼨的时候产⽣⼀个新的⽂件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出⽬录,当⽂件⼤⼩到达定义的⽂件最⼤尺⼨时,将会⾃动滚动,即将原来的内容移到1⽂件
# 若File=,将会在项⽬的根⽬录上创建⽂件夹及⽂件
log4j.appender.File.File = /../../
# Append 默认是true,即将消息增加到指定⽂件中,false表⽰将消息覆盖指定的⽂件内容
log4j.appender.File.Append=true
#输出到⽂件的⽇志的编码格式
log4j.appender.File.Encoding=utf-8
#定义⽂件最⼤⼤⼩,单位可以是KB,MB,GB
log4j.appender.File.MaxFileSize = 10MB
# 指定⽇志消息的输出最低层次
# 输出所有⽇志,如果换成DEBUG表⽰输出DEBUG以上级别⽇志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =%d{yyyy-MM-dd HH:mm:ss.SSS} - %m%n
⾄此完成⽇志的管理
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论