spring boot打开tomcat的access日志
spring boot虽说内置了tomcat,但打出来的是jar包而非war包,更没有access日志,那么如何打开access日志呢?只需在application.properties中加入相关配置即可。这里仍以多环境配置为例,原有配置就不贴了(参见spring boot配置文件、日志配置和代码的多环境配置 ),下面只贴打开access日志需要新增的配置:
application.properties(也可用yml)加入通用配置:
#tomcat的accesslog日志 server.tomcat.accesslog.buffered=true server.tomcat.accesslog.enabled=true server.tomcat.accesslog.file-date-format=.yyyy-MM-dd
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D
server.tomcat.accesslog.prefix=access_log
server.tomcat.accesslog.rename-on-rotate=false
server.tomcat.accesslog.request-attributes-enabled=false
server.tomcat.accesslog.rotate=true
server.tomcat.accesslog.suffix=.log
server.tomcat.accesslog.directory=logs
application-dev.properties:
#tomcat日志路径
server.tomcat.basedir=/home/wumanshu
application-prod.properties:
#tomcat日志路径
server.tomcat.basedir=/home/wulf/translate
application-test.properties:
#tomcat日志路径
server.tomcat.basedir=/home/lulu
打完收工。
再看一个简单的例子,只有一个环境,在单一配置application.properties文件中同上配置,只不过我这边项目的logs放在项目所在的classes目录同级别,所以server.tomcat.basedir就用一个点就完事了:
server.port:8100
server.tomcat.accesslog.buffered=true
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.file-date-format=.yyyy-MM-dd
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D
server.tomcat.accesslog.prefix=access_log
server.tomcat.accesslog.rename-on-rotate=false
server.tomcat.accesslog.request-attributes-enabled=false
server.tomcat.accesslog.rotate=true
server.tomcat.accesslog.suffix=.log
server.tomcat.accesslog.directory=logs
server.tomcat.basedir=.
启动springboot后,项目的logs目录下新增了一个access_log.2020-12-02.log: