
昨天在看项目访问日志的时候,发现了个异常。 一个新疆·喀什用户 POST 请求 422, 哪个接口大部分时候应该是触发 400, FastAPI 的 422 是在路由函数执行之前,由内置异常处理器抛出的,路由内部代码还没跑,普通日志拿不到原始请求体。 想要专门捕获 Pydantic 校验失败(422),拿到完整报错 + 原始请求 body,或者 5xx 等错误,定位代码块,拿到请求 body 什么的,通常需要 Sentry 等专业方案

昨天在看项目访问日志的时候,发现了个异常。 一个新疆·喀什用户 POST 请求 422, 哪个接口大部分时候应该是触发 400, FastAPI 的 422 是在路由函数执行之前,由内置异常处理器抛出的,路由内部代码还没跑,普通日志拿不到原始请求体。 想要专门捕获 Pydantic 校验失败(422),拿到完整报错 + 原始请求 body,或者 5xx 等错误,定位代码块,拿到请求 body 什么的,通常需要 Sentry 等专业方案