鍍金池/ 問答/Java  網(wǎng)絡安全/ springboot配置log4j日志但是不生成日志文件,只在控制臺打印

springboot配置log4j日志但是不生成日志文件,只在控制臺打印

# LOG4J配置
log4j.rootCategory=INFO, stdout, file, errorfile
log4j.category.com.didispace=DEBUG, didifile
log4j.logger.error=errorfile

# 控制臺輸出
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# root日志輸出
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.file=logs/all.log
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# error日志輸出
log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorfile.file=logs/error.log
log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd
log4j.appender.errorfile.Threshold = ERROR
log4j.appender.errorfile.layout=org.apache.log4j.PatternLayout
log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

# com.didispace下的日志輸出
log4j.appender.didifile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.didifile.file=logs/my.log
log4j.appender.didifile.DatePattern='.'yyyy-MM-dd
log4j.appender.didifile.layout=org.apache.log4j.PatternLayout
log4j.appender.didifile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L ---- %m%n

這是log4j.properties的配置,運行的時候沒有生成文件,僅僅是在控制臺打印出來

回答
編輯回答
喵小咪

logs/my.log >> /logs/my.log
在磁盤根目錄下 會生成logs 目錄

2017年2月28日 07:17
編輯回答
好難瘦

Spring Boot 1.4 以上不支持 log4j ,首先說版本!

2017年10月14日 13:14
編輯回答
忠妾

親 請問解決了么

2018年8月13日 14:20
編輯回答
淡墨

我們用的logback,都很ok

2018年8月16日 08:18
編輯回答
不討喜

要生成文件應該是log4j.appender.file.File =/logs/my.log 吧, 又或者是你少寫了 / ?

log4j.appender.didifile.file=/logs/my.log

確保pom.xml有這些

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j</artifactId>
</dependency>   
2017年10月9日 08:52
編輯回答
傻丟丟

配置文件application.properties中,需要添加:

logging.file=myapplication.log

參考:springboot的logging文檔

2018年1月9日 20:43