spring boot项目下application.properties中使用logging.path和logging.file时的细节

logging.path仅仅用于指定日志输出的目录,且不能指定输出的文件名,且默认名为spring.log  若指定的是相对目录,则会生成在当前总项目的目录下

idea中新建sprnig boot项目,添加spring boot项目中的logback依赖:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

application.properties中指定日志输出目录为桌面,如下:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

运行spring boot项目,控制台内容如下:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

回到桌面,发现已生成了spring.log文件,如下:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

内容与控制台输出一致:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

而当我们更改为application.properties=/Users/yanguobin/Desktop/aaa.log

再次运行时,发现并没有在桌面生成aaa.log日志文件,而是在桌面生成了aaa.log目录,在该目录下生成了spring.log日志文件,如下:

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节

再比如更改为相对路径application.properties=ccc.log

再次运行后,ccc.log仍为目录,且生成在了当前总项目springbootdemos(我这里springbootdemos是一个Empty Project,springbootlogbackdemo是一个子项目)目录下,即与子项目springbootlogbackdemo同级

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节


logging.file可以

  • 只指定文件名,会生成在当前总项目springbootdemos目录下,即与子项目springbootlogbackdemo同级

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节

  • 同时指定目录和文件名,会在指定目录下生成指定文件名的日志文件
    • 绝对路径

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节

    • 相对路径,则会生成在当前总项目springbootdemos目录下,即与子项目springbootlogbackdemo同级

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节

  • 但当只指定已存在的目录时,是不起作用的,是无效的

spring boot项目下application.properties中使用logging.path和logging.file时的细节

spring boot项目下application.properties中使用logging.path和logging.file时的细节

  • 若后面跟上不存在的目录或文件,则会生成日志文件

spring boot项目下application.properties中使用logging.path和logging.file时的细节

运行之前桌面上没有mylog的情况时,会生成名为mylog的日志文件


若同时指定logging.path和logging.file,则logging.path不会生效,只会按照logging.file生成,具体不再举例演示

上一篇:Spring全家桶系列–SpringBoot与Mybatis结合


下一篇:phpmyadmin #2003 无法登录 MySQL服务器的解决方法