log4j的配置

简介: log4j的配置

1.配置文件的基本信息

#配置根Logger
log4j.rootLogger = [ level ] , appenderName1 , appenderName2 , …
#配置日志信息输出目的地Appender
log4j.appender.appenderName = fully.qualified.name.of.appender.class 
  log4j.appender.appenderName.option1 = value1 
  … 
  log4j.appender.appenderName.optionN = valueN 
#配置日志信息的格式(布局)
log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class 
  log4j.appender.appenderName.layout.option1 = value1 
  … 
  log4j.appender.appenderName.layout.optionN = valueN

layout输出格式

org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)


打印参数

 %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},输出类似:2002年10月18日 22 : 10 : 28 , 921 
  %l   输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java: 10 ) 


2.注意将error信息和其他级别信息进行区分

### 输出到日志文件 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG ## 输出DEBUG级别以上的日志
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
### 保存异常信息到单独文件 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = logs/error.log ## 异常日志文件名
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR ## 只输出ERROR级别以上的日志!!!
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n

3.代码中使用方法

 public class TestLog4j {
    public static void main(String[] args) {
        PropertyConfigurator.configure( " D:/Code/conf/log4j.properties " );
        Logger logger = Logger.getLogger(TestLog4j. class );
        logger.debug( " debug " );
        logger.error( " error " );
    } 
}

4.主要的一些配置参数的介绍

ERROR:输出程序中的非控制内的错误


WARN:输出一些警告信息,比如session丢失

INFO:输出一些显示信息,比如用户的登录登出

DEBUG:输出调试信息

日志的输出目的地

org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)


由于在正式项目中,日志的输出是非常有必要的,并且比较大量,而以上的日志输出格式是必要的,合适的文件大小应该为200M。


日志输出格式

org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)


尽量使用以上格式,在调试代码问题的时候,能够尽快的找到问题所在点

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2天前
|
Java 数据库
Log4j介绍
Log4j介绍
10 0
|
9月前
|
XML Java 测试技术
Log4j
Log4j 是一个开源的 Java 日志框架,提供了灵活的日志记录功能和多种输出方式,可以帮助开发人员更好地掌握应用程序的运行状态和性能。Log4j 支持多种日志级别、多种输出格式、多种输出目标等特性,可以满足不同应用场景的需求。
106 0
|
11月前
|
XML 存储 Java
log4j的配置和使用
log4j的配置和使用
211 0
|
安全
log4j2 安装interactsh
log4j2 安装interactsh
253 0
log4j2 安装interactsh
|
Java
log4j的配置
log4j的配置
116 0
|
Java Apache 数据格式
log4j2配置
Log4j2 Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor Table of contents ...
2023 0
Log.D的使用
第一个参数为D/后面的名称,一般是变量或者方法名。
1256 0
|
Android开发
Log
Log框架 Logger (简单,漂亮,强大的Android日志工具) Hugo (在调试版本上注解的触发方法进行日志记录) Timber (一个小的,可扩展的日志工具)
992 0
|
Java Apache Windows
Log4j 的配置
上一章介绍log4j的核心组件。本章介绍如何使用配置文件来配置这些核心组件。配置log4j涉及分配级别,定义追加程序,并在配置文件中指定布局的对象。
1121 0