前言
Springboot3.4.x
版本新增结构化日志,Spring Boot3.5.x
又对它进行改进了一些新属性
结构化日志
可以使用 logging.structured.json.stacktrace.* 属性配置堆栈跟踪输出,例如
1、 logging.structured.json.stacktrace.max-length
- 作用:限制堆栈跟踪的最大深度,避免输出过长的堆栈信息。
- 类型 :整数(如
10
、20
)
logging.structured.json.stacktrace.max-length 是一个用于控制 JSON 格式日志中堆栈跟踪信息最大长度的配置项,限制单个异常堆栈跟踪信息的总字符数(或行数),超出部分将被截断(通常用 ...
表示省略)
typescript
@GetMapping("/hello")
public String hello() {
int a = 1 / 0;
return "success";
}
输出

2、 logging.structured.json.stacktrace.max-throwable-depth
logging.structured.json.stacktrace.max-throwable-depth 是一个用于控制 JSON 格式日志中嵌套异常深度的配置项。在 Java 中,异常可以嵌套(通过 Throwable.getCause())
3、logging.structured.json.stacktrace.exclude-packages
- 作用:排除特定包路径下的堆栈元素,减少冗余信息。
- 类型:逗号分隔的包名列表。
总结
总之,Springboot3.4.x
提供的结构化日志挺有用的,不过这种看版本升级以及技术选型,可以对日志做定制化操作