Spring Boot2配置服务器访问日志过程解析
这篇文章主要介绍了SpringBoot2配置服务器访问日志过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Tomcat控制台中看到的日志是服务器的日志,而服务器访问日志则是记录服务处理的请求信息。
开发环境:IntelliJIDEA2019.2.2
SpringBoot版本:2.1.8
1、新建一个名称为demo的SpringBoot项目。
2、application.yml添加配置
server: tomcat: basedir:logs accesslog: pattern:'%t%m%s%v%U' enabled:true directory:access-logs buffered:false
上面表示将日志存放于项目的logs\access-logs目录下;
buffered:false表示不缓冲,直接将日志记录到文件中;
pattern的标识符一些常用取值如下:
%a-远端IP地址 %A-本地IP地址 %b-发送的字节数,不包括HTTP头,如果为0,使用"-" %B-发送的字节数,不包括HTTP头 %h-远端主机名(如果resolveHost=false,远端的IP地址) %H-请求协议 %l-从identd返回的远端逻辑用户名(总是返回'-') %m-请求的方法(GET,POST,等) %p-收到请求的本地端口号 %q-查询字符串(如果存在,以'?'开始) %r-请求的第一行,包含了请求的方法和URI %s-响应的状态码 %S-用户的sessionID %t-日志和时间,使用通常的Log格式 %u-认证以后的远端用户(如果存在的话,否则为'-') %U-请求的URI路径 %v-本地服务器的名称 %D-处理请求的时间,以毫秒为单位 %T-处理请求的时间,以秒为单位
3、修改启动类代码DemoApplication.java
packagecom.example.demo; importorg.springframework.boot.SpringApplication; importorg.springframework.boot.autoconfigure.SpringBootApplication; importorg.springframework.web.bind.annotation.PathVariable; importorg.springframework.web.bind.annotation.RequestMapping; importorg.springframework.web.bind.annotation.RestController; @SpringBootApplication @RestController publicclassDemoApplication{ publicstaticvoidmain(String[]args){ SpringApplication.run(DemoApplication.class,args); } @RequestMapping("/{name}") publicStringtest(@PathVariableStringname){ returnname; } }
Run项目后,自动在项目目录中生成logs\access-logs\access_log.2019-09-25.log
先后访问
http://localhost:8080/111 http://localhost:8080/aaa
打开access_log.2019-09-25.log,可看到生成了2条记录:
[25/Sep/2019:22:01:58+0800]GET200localhost/111 [25/Sep/2019:22:02:01+0800]GET200localhost/aaa
备注:
本人版本是apache-tomcat-9.0.0.M11,默认是开启访问日志,打开tomcat/conf/server.xml文件,下面是开启访问日志。
记录的文件放在/tomcat/logs目录下,文件命名为localhost_access_log.2019-09-25.txt这种形式,一天一个文件。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。