JAVA Tomcat Log4j 日志输出到文件

工程引用

    Log4j.jar

   要输出日志的类中引用

    import org.apache.log4j.Logger;
    import org.apache.log4j.PropertyConfigurator;

创建log4j.properties配置文件(UTF-8)

记住存储位置,使用PropertyConfigurator.configure加载

内容:

### 设置日志级别 ###
log4j.rootLogger=debug,stdout,logfile,WeiXinPay 

### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern = [ %p ] - [ %l ] %m%n

### 每天产生一个日志文件 ###
log4j.appender.logfile = org.apache.log4j.DailyRollingFileAppender
### 文件大小到达指定尺寸的时候产生一个新的文件 ###
#log4j.appender.logfile = org.apache.log4j.RollingFileAppender  
### 指定日志文件名与路径 ###
log4j.appender.logfile.File = myapplog/log4j.log  
### 文件的最大尺寸 ###
log4j.appender.logfile.MaxFileSize = 512KB 
### 日志是否追加 ###
log4j.appender.logfile.Append=true
### 日志文件后缀追加 ###
log4j.appender.logfile.datePattern='_'yyyy-MM-dd-HH-mm'.log'
### 最大记录文件数 覆盖 ###
log4j.appender.logfile.MaxBackupIndex = 3  
### 日志记录字符集 ###
log4j.appender.logfile.Encoding=UTF-8
### PatternLayout布局就要指定的打印信息的具体格式 ###
log4j.appender.logfile.layout = org.apache.log4j.PatternLayout 
 ### PatternLayout布局就要指定的打印信息的具体格式 ###
log4j.appender.logfile.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [ %p ] - [ %l ] %m%n

### 每天产生一个日志文件 ###
log4j.appender.WeiXinPay = org.apache.log4j.DailyRollingFileAppender
### 文件大小到达指定尺寸的时候产生一个新的文件 ###
#log4j.appender.WeiXinPay = org.apache.log4j.RollingFileAppender  
### 指定日志文件名与路径 ###
log4j.appender.WeiXinPay.File = myapplog/WeiXinPay/log.log  
### 文件的最大尺寸 ###
log4j.appender.WeiXinPay.MaxFileSize = 512KB 
### 日志是否追加 ###
log4j.appender.WeiXinPay.Append=true
### 日志文件后缀追加 ###
log4j.appender.WeiXinPay.datePattern='_'yyyy-MM-dd-HH-mm'.log'
### 最大记录文件数 覆盖 ###
log4j.appender.WeiXinPay.MaxBackupIndex = 3  
### 日志记录字符集 ###
log4j.appender.WeiXinPay.Encoding=UTF-8
### PatternLayout布局就要指定的打印信息的具体格式 ###
log4j.appender.WeiXinPay.layout = org.apache.log4j.PatternLayout 
 ### PatternLayout布局就要指定的打印信息的具体格式 ###
log4j.appender.WeiXinPay.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [ %p ] - [ %l ] %m%n

其中WeiXinPay是我java工程名称,可以是其它名称,Logger.getLogger时注意填写正确就行了,可以多个工程,添加对应标签就行了

### 指定日志文件名与路径 ###
log4j.appender.WeiXinPay.File = myapplog/WeiXinPay/log.log

目录是以log4j.properties所有文件夹为根目录

我的log4j.properties配置文件在C:\\Program Files\\Apache Software Foundation\\Tomcat 9.0文件夹下

按照配置文件生成的日志文件会在C:\\Program Files\\Apache Software Foundation\\Tomcat 9.0\\myapplog\\WeiXinPay\\下面

初始化

//WeiXinPay是我的JAVA工程名称,log4j.properties配置文件中有设置,你也可以起任意名字

    private static Logger logger = Logger.getLogger("WeiXinPay");//API.class.getName());

// 加载log4j.properties配置文件
    PropertyConfigurator.configure("C:\\Program Files\\Apache Software Foundation\\Tomcat 9.0\\log4j.properties");

测试

        logger.debug("Here is some DEBUG");  
        logger.info("Here is some INFO");  
        logger.warn("Here is some WARN");  
        logger.error("Here is some ERROR");  
        logger.fatal("Here is some FATAL"); 

日志文件内容

2018-09-04 15:35:57 [ DEBUG ] - [ com.xxxxxxxx.API.init(API.java:67) ] Here is some DEBUG
2018-09-04 15:35:57 [ INFO ] - [ com.xxxxxxxx.API.init(API.java:68) ] Here is some INFO
2018-09-04 15:35:57 [ WARN ] - [ com.xxxxxxxx.API.init(API.java:69) ] Here is some WARN
2018-09-04 15:35:57 [ ERROR ] - [ com.xxxxxxxx.API.init(API.java:70) ] Here is some ERROR
2018-09-04 15:35:57 [ FATAL ] - [ com.xxxxxxxx.API.init(API.java:71) ] Here is some FATAL

猜你喜欢

转载自blog.csdn.net/cnicfhnui/article/details/82384700