spring-boot默认日志位置

时间:2015-08-11 10:54:02

标签: java logging spring-boot

spring-boot应用程序中,我可以使用

指定自定义日志文件

java -jar spring-boot-app.jar --logging.file=/home/ubuntu/spring-boot-app.log

但如果我没有指定一个,它会去哪里?

我无法在以下任何文件夹中找到它:

/tmp/
/var/log/
~/

拥有spring-boot-starter-logging或任何其他日志记录依赖项。

我希望有类似于catalina.out的东西,因为默认配置运行嵌入式Tomcat:

INFO 10374 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8100 (http)

3 个答案:

答案 0 :(得分:20)

Spring Boot使用Commons Logging进行所有内部日志记录,但保留底层日志实现。

为Java Util Logging,Log4J,Log4J2和Logback提供了默认配置。在每种情况下,记录器预先配置为使用控制台输出,并且可选的文件输出也可用。

来自Spring Boot logging documentation

默认日志配置会在写入时将消息回显给控制台。 因此,在您按照描述明确指定文件之前,它将保留在控制台中。

答案 1 :(得分:0)

默认情况下,Spring Boot不会将日志输出到任何文件。如果您希望将日志写入文件(除了控制台输出之外),则应使用 logging.file logging.path 属性( )。

在application.properties中,只需设置:

logging.file=/home/ubuntu/spring-boot-app.log

这将在spring-boot-app.log下创建一个/home/ubuntu文件。

答案 2 :(得分:-1)

默认情况下,Spring Boot仅记录到控制台,不写日志文件。如果除了控制台输出外还想写入日志文件,则需要设置logging.filelogging.path属性(例如,在application.properties中)。

application.properties中的以下代码会将日志写入/home/user/my.log

logging.path = /home/user
logging.file = my.log
相关问题