Log4j配置

       log4J是java中最为常见的日志管理组件,通过log4j可以轻易的在任意代码位置输出日志,并可以灵活的控制日志的输出,是各种系统中不可缺少的功能组件。这里仅对log4j的配置作简单介绍说明。

      首先到log4j的官网下载log4组件,官网地址http://logging.apache.org/log4j/,本文使用log4j-1.2.12.jar版本的jar包。

      然后创建log4j配置文件。配置文件可以是xml格式或properties格式,文件名称可以为任意名称,可以存放在任意位置,一般缺省此配置文件名称为log4j.properties,缺省存储路径为webroot/WEB-INF/classes/log4j.properties。配置内容如下:

#配置根logger
log4j.rootLogger=ALL, stdout,R
 
#配置日志输出Appender——stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[QC] %p [%d] %C.%M(%L) | %m%n
 
#配置另一个Appender——R
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=D:/logs/mylog.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d-[TS] %p %t %c - %m%n
log4j.appender.R.Encoding=UTF-8
 
#配置输出级别
log4j.logger.com.test=DEBUG
log4j.logger.com.test.log4j=INFO

这里首先配置根logger,声明需要使用的Appender,随后配置Appender的各个属性,最后定义代码各个部分的输出级别。其中Appender可以使用log4j提供的5中预定义Appender,名称和用途分别为:

Appender类名

作 用

org.apache.log4j.ConsoleAppender将日志输出到控制台
org.apache.log4j.FileAppender将日志输出到文件
org.apache.log4j.DailyRollingFileAppender每天产生一个日志文件
org.apache.log4j.RollingFileAppender文件大小到达指定尺寸时产生一个新的文件
org.apache.log4j. WriterAppender将日志信息以流格式发送到任意指定的地方

Appender的Layout包括4种类型,名称和用途分别为:

Layout类名

作 用

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

日志输出级别被定义为五个级别,按优先级从低到高依次为:debug->info->warn->error->fatal

有关log4j更详细的参数选项配置可以参考官方提供的帮助文档。

      配置文件创建好之后就可以在代码中使用log4j了,示例调用代码:

package com.test.log4j;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class Log4JSample {
	public Log4JSample() throws IOException{
		//初始化log4j的配置
		InputStream inStream = this.getClass().getClassLoader().getResourceAsStream("log4j.properties");
		Properties property = new Properties();
		property.load(inStream);
		PropertyConfigurator.configure(property);
	}
	public void doSample(){
		Logger logger = Logger.getLogger(Log4JSample.class);
		logger.debug("debug");
		logger.info("info");
		logger.warn("warn");
		logger.error("error");
		logger.fatal("fatal");
	}
}

运行doSample方法,日志会输出到控制台和文件D:/logs/mylog.log中,输出结果:

2010-10-28 14:42:57,375-[TS] INFO main com.test.log4j.Log4JSample - info
2010-10-28 14:42:57,375-[TS] WARN main com.test.log4j.Log4JSample - warn
2010-10-28 14:42:57,375-[TS] ERROR main com.test.log4j.Log4JSample - error
2010-10-28 14:42:57,375-[TS] FATAL main com.test.log4j.Log4JSample - fatal
   log4j的配置初始化只需要一次就可以了,一般在系统初始化时进行log4j的初始化工作,然后就可以在系统的任何地方使用log4j了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring Boot中,你可以使用Log4j来进行日志记录。下面是配置Spring Boot项目中Log4j的步骤: 1. 首先,确保在项目的pom.xml文件中添加了Log4j的依赖。可以在<dependencies>标签内添加以下内容: ```xml <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> ``` 2. 创建一个log4j.properties或log4j.xml文件,并将其放置在src/main/resources目录下。你可以根据自己的需求选择使用properties文件或者xml文件。 3. 在log4j配置文件中,定义日志输出的格式和位置。你可以设置不同的日志级别,例如DEBUG、INFO、WARN、ERROR等。下面是一个简单的log4j.properties配置示例: ```properties # 设置日志级别为INFO log4j.rootLogger=INFO, stdout # 输出到控制台 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %c{1}:%L - %m%n ``` 4. 在Spring Boot应用程序的application.properties或application.yml文件中,添加以下配置,以确保应用程序使用log4j作为日志框架: application.properties: ```properties # 使用log4j作为日志框架 logging.config=classpath:log4j.properties ``` application.yml: ```yaml # 使用log4j作为日志框架 logging: config: classpath:log4j.properties ``` 这样配置后,你就可以在你的代码中使用日志记录了。例如,使用以下代码在类中创建一个Logger对象并使用它进行日志记录: ```java import org.apache.log4j.Logger; public class YourClass { private static final Logger logger = Logger.getLogger(YourClass.class); public void yourMethod() { logger.info("This is an info log message"); logger.error("This is an error log message"); } } ``` 以上就是在Spring Boot中配置Log4j的基本步骤,你可以根据自己的需求进行更高级的配置和定制。希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值