现象
用户打开FastGPT的对话日志页面时,调用/api/core/app/logs/list接口返回400错误,接口返回信息包含Data validation error,详细的Zod错误提示显示list数组下多个元素的sourceMember.name字段预期为字符串类型,但实际收到了undefined值。本次发起请求的参数为:
{"pageNum": 1,"pageSize": 20,"appId": "6912f164a7379d7643a50df6","dateStart": "2026-02-28T00:00:00+08:00","dateEnd": "2026-03-06T23:59:59+08:00","chatSearch": "","feedbackType": "all"}可能原因
根据报错的Zod验证信息,核心原因是接口返回的对话日志列表数据中,部分元素的sourceMember.name字段值为undefined,不符合系统预设的字符串类型验证规则。其他潜在原因需按实际环境进一步排查。
排查步骤
- 查看
/api/core/app/logs/list接口的完整返回数据,逐一检查list数组中每个元素的sourceMember.name字段是否存在且为合法字符串。 - 检查FastGPT后端对话日志数据的生成、存储或查询逻辑,确认
sourceMember.name字段是否在流程中被正确赋值。 - 核对请求参数的格式与内容,确认
dateStart、dateEnd等参数符合接口要求,需按实际环境确认参数有效性。 - 查看FastGPT后端服务的运行日志,获取更详细的错误堆栈信息,定位数据字段缺失的具体环节。
解决与验证
- 修复对话日志数据的处理逻辑,确保
sourceMember.name字段始终被赋值为合法的字符串值,避免出现undefined情况。 - 使用正确的请求参数重新调用
/api/core/app/logs/list接口,验证是否不再返回Data validation error报错。 - 打开FastGPT的对话日志页面,确认页面可以正常加载日志数据,无异常报错提示。
来源:https://github.com/labring/FastGPT/issues/6512