# 数据服务相关问题排查指南
# 排查指南详细说明
通用前置检查:
- 确认版本:明确是7.5.0版本。
- 确认服务引擎状态:检查服务引擎(dataEngine)进程是否正常启动。
- 查阅补丁列表:优先检索官方补丁。您可以通过以下链接访问官方补丁列表:
- DAMP 7.5.0 补丁列表: 数据资产7.5.0补丁列表 (opens new window)
# 场景一:服务创建/发布失败
高频现象:
- 新增服务时,点击“提交”无反应或报错。
- 结果集服务测试SQL失败。
- 服务发布后无法访问。
- 三方Http服务代理发布报错。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
服务开发、发布、SQL。 - 相关补丁示例:
DAMP_7.5.0_SERVER_20251105_P1(解决达梦数据源测试SQL报错、服务授权类型转换异常)
- 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查SQL语句规范(结果集服务)。
- 现象:测试SQL时报错。
- 排查项:
- SQL结尾是否包含分号
;。结果集服务会在自定义SQL外拼装SQL,因此自定义SQL结尾不能有分号。 - SQL中是否包含数据库特定的方言语法。
- SQL结尾是否包含分号
- 解决方案:
- 删除SQL结尾的分号。
- 在数据库客户端中先验证SQL执行是否正常。
第三步:检查数据源配置。
- 操作:确认服务绑定的数据源配置是否正确。
- 排查项:
- 数据源URL、用户名、密码是否正确。
- 对于达梦数据库,注意用户名与Schema的对应关系。如果用户名不是Schema的所有者,需要在URL中指定Schema。
- 数据源连接测试是否通过。
- 解决方案:
- 在“公共资源” -> “数据源管理”中测试数据源连通性。
- 修正数据源配置后,重新发布服务。
第四步:检查服务编码唯一性。
- 操作:确认服务编码是否唯一。
- 排查项:服务编码只能包含英文/数字,且在平台内唯一。
- 解决方案:修改服务编码,使用未被占用的编码。
第五步:处理“达梦数据源测试SQL报错”问题。
- 现象:使用达梦数据源,编写任意SQL(如SELECT 1 FROM DUAL),点“测试SQL”报“[xxx模式]不属于当前用户”。
- 解决方案:
- 申请补丁
DAMP_7.5.0_SERVER_20251105_P1。 - 确保数据源URL中正确指定了Schema,例如:
jdbc:dm://127.0.0.1:5236/数据库名?schema=用户名
- 申请补丁
# 场景二:接口测试/调用报错
高频现象:
- 服务测试时返回500内部错误。
- 调用接口报类型转换异常。
- 分页查询无效。
- GaussDB等特定数据库统计页面报错。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
测试、500、类型转换、GaussDB。 - 相关补丁示例:
DAMP_7.5.0_SERVER_20251016_P1(解决GaussDB统计页面报错)DAMP_7.5.0_SERVER_20251105_P1(解决服务授权类型转换异常)DAMP_7.5.0_SERVER_20260104_P1(解决服务列表按时间排序)
- 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查SQL语法兼容性。
- 操作:根据数据库类型检查SQL语法兼容性。
达梦数据库:
- 大小写敏感问题:如果表名或字段名在数据库中是大写,而SQL中使用小写,会导致“表或视图不存在”错误。
- 解决方案:
- 在JDBC URL中添加参数
?columnNameUpperCase=false。 - 统一使用大写表名和字段名。
- 在SQL中使用双引号括起小写标识符。
- 在JDBC URL中添加参数
GaussDB:
- 统计页面报错:申请补丁
DAMP_7.5.0_SERVER_20251016_P1。
第三步:检查入参格式。
- 操作:确认调用接口时传入的参数格式是否正确。
- 排查项:
- 日期格式是否与数据库要求一致。
- 必填参数是否已传入。
- 参数名称是否与接口定义一致。
- 解决方案:修正入参格式后重新调用。
第四步:检查服务引擎状态。
- 操作:当测试接口报500错误时,检查服务引擎日志。
- 命令:
tail -f /opt/dataengineprod/logs/engine.log - 解决方案:根据日志错误信息修复。
第五步:处理“类型转换异常”问题。
- 现象:调用接口报类型转换异常。
- 排查项:字段做了脱敏导致。
- 解决方案:删除脱敏配置后问题解决。
# 场景三:服务授权/权限异常
高频现象:
- 服务授权后,调用接口返回无权限。
- 授权页面输入输出字段选不到。
- 脱敏设置不生效。
- 服务授权时类型转换异常。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
授权、字段选不到、脱敏。 - 相关补丁示例:
DAMP_7.5.0_UI_20250725_P1(解决服务授权字段选不到)DAMP_7.5.0_SERVER_20251105_P1(解决服务授权类型转换异常)
- 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查授权配置。
- 操作:确认服务已正确授权。
- 排查项:
- 在“服务授权”列表中,是否有对应的授权记录。
- 授权记录的状态是否为“启用”。
- 授权账号和密钥是否正确。
- 解决方案:
- 如果授权记录不存在,重新进行服务授权。
- 如果授权记录已停用,点击“启用”。
第三步:检查token有效性。
- 操作:确认调用接口时携带了正确的token。
- 排查项:
- 调用接口时是否在header中携带了
Authorization: Bearer {token}。 - token是否在有效期内。
- 服务验证是否已开启。
- 调用接口时是否在header中携带了
- 解决方案:
- 重新获取token(通过授权账号和密钥调用token接口)。
- 确保服务验证已开启(在服务引擎配置中)。
第四步:检查脱敏配置。
- 操作:当脱敏设置不生效时。
- 排查项:
- 服务授权时是否勾选了脱敏规则。
- 服务验证是否已开启(脱敏需要token验证)。
- 解决方案:
- 确认服务验证已开启,调用接口时携带token。
- 如果字段做了脱敏导致类型转换异常,删除脱敏配置。
第五步:处理“授权页面字段选不到”问题。
- 现象:服务授权时,输入输出字段选不到。
- 解决方案:申请补丁
DAMP_7.5.0_UI_20250725_P1。
# 场景四:服务统计/监控异常
高频现象:
- 服务调用统计页面报500错误。
- 统计数据不显示或显示不全。
- 各部门调用分布情况显示异常。
- 调用次数不显示。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
统计、监控、调用。 - 相关补丁示例:
DAMP_7.5.0_SERVER_20251016_P1(解决GaussDB统计页面报错)
- 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查监控组件配置。
- 操作:确认filebeat+logstash+elasticsearch链路是否正常。
- 排查项:
- filebeat是否安装在服务引擎所在服务器。
- filebeat配置中,
paths路径是否正确指向服务引擎的api.log文件。 - logstash配置中,beats端口(默认5044)是否正确。
- elasticsearch是否正常启动。
- 解决方案:
- 检查各组件日志,确认日志是否正常采集和传输。
第三步:检查ES连接状态。
- 操作:进入“技术门户” -> “配置中心” -> “平台参数”。
- 排查项:
searchEngine.engineUrl配置的ES地址是否正确。 - 解决方案:修正ES地址配置,重启DAMP服务。
第四步:检查日志采集。
- 操作:查看服务引擎的
api.log文件,确认是否有调用记录。 - 命令:
tail -f /opt/dataengineprod/logs/api.log - 解决方案:如果没有日志,检查服务调用是否正常。
- 操作:查看服务引擎的
第五步:检查数据库适配(GaussDB场景)。
- 现象:使用GaussDB数据库时统计异常。
- 解决方案:申请补丁
DAMP_7.5.0_SERVER_20251016_P1。
# 场景五:服务引擎/ESB集成问题
高频现象:
- 服务引擎无法启动或进程异常。
- 服务引擎监控无数据。
- ESB集成后生成不了服务。
- 服务发布到ESB失败。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
引擎、ESB、进程。 - 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查服务引擎进程。
- 操作:登录服务引擎服务器,检查进程状态。
- 命令:
ps -ef | grep dataEngine tail -f /opt/dataengineprod/logs/engine.log - 解决方案:如果进程不存在,启动服务引擎。
第三步:检查服务引擎配置文件。
- 操作:检查服务引擎配置文件是否正确。
- 配置文件:
/opt/dataengineprod/config/application.properties - 关键配置:
# 数据库配置 spring.datasource.url=jdbc:mysql://127.0.0.1:3306/damp?useUnicode=true&characterEncoding=UTF-8 spring.datasource.username=root spring.datasource.password=primeton # Redis配置 spring.redis.host=127.0.0.1 spring.redis.port=6379 # 引擎环境 engine.runtime.env=PROD # AFCenter应用名,用于第三方脱敏加密获取token认证 afc.application.name=AFCENTER - 解决方案:修正配置后重启服务引擎。
第四步:检查服务引擎与DAMP通信。
- 操作:确认服务引擎能正常访问DAMP数据库。
- 排查项:数据库连接是否正常,Redis连接是否正常。
- 解决方案:修正数据库或Redis配置。
第五步:检查ESB配置。
- 操作:进入“技术门户” -> “配置中心” -> “平台参数”。
- 排查项:ESB集成相关配置是否正确。
- 关键配置:
esb.enable.prod = true esb.ip.prod = ESB服务器IP esb.port.prod = 8080 esb.token.prod = xxxxx esb.serviceCode.prod = primeton.dam.data.engine esb.appCode.prod = primeton.dam.data - 解决方案:修正配置后,重新发布服务。
第六步:处理“ESB生成不了服务”问题。
- 现象:平台配置对接ESB,配置完成,但是生成不了服务。
- 排查项:token配置错误。
- 解决方案:修正token配置后问题解决。
# 场景六:文件/报表服务问题
高频现象:
- 文件上传失败。
- 报表服务无法访问。
- 新增报表时保存失败。
排查步骤:
第一步:排除产品BUG。
- 操作:在官方补丁列表中,搜索关键词
文件、报表、上传。 - 解决方案:
- 1.优先使用产品最新补丁合集,见补丁列表中补丁合集列表
- 2.若找到描述匹配的补丁,则申请并应用
- 操作:在官方补丁列表中,搜索关键词
第二步:检查文件上传配置。
- 操作:检查nginx和DAMP配置文件中的上传大小限制。
- 配置项:
- nginx:
client_max_body_size 100m; - DAMP:
spring.servlet.multipart.max-file-size=100MB
- nginx:
- 解决方案:根据实际需求调整限制。
第三步:检查报表参数配置。
- 操作:新增报表时,确认所有必填项已填写。
- 排查项:报表名称、服务地址、参数配置是否正确。
- 解决方案:补充完整后重新提交。
第四步:检查文件服务器配置。
- 操作:如果使用文件服务器存储,确认配置正确。
- 解决方案:修正配置后重试。