环境:SpringBoot3.2.5
1. 输出所有Controller接口信息
有时,为了更便捷地排查问题,我们可能希望在容器启动时能够打印出当前项目中所有的Controller接口信息。这样做可以提供一个清晰的项目接口概览,从而帮助我们更快速地定位和解决可能出现的问题。
方式1
logging:
level:
web: trace
输出结果
虽然达到了目的,但是这将所有web分组的日志都进行输出了,日志信息非常多,我们所期望的仅仅是输出Controller相关的信息。
方式2
logging:
level:
'[_org.springframework.web.servlet.HandlerMapping.Mappings]': debug
输出结果
通过上面的设置,此时日志信息只输出了Controller接口,其它的都按照默认的输出。
2. 统计接口调用耗时
一般我们在不借助第三方工具的情况下,打印接口耗时通常会在接口处理逻辑的开始和结束位置分别记录当前时间戳,然后计算时间差来获取耗时,如下示例:
@GetMapping("/time")
public Object time() throws Exception {
Instant startTime = Instant.now