故障排除
日志排查是微搭私有化部署中最重要的故障排除方式。由于私有化环境资源配置精简,系统未提供独立的日志服务,所有日志均存储在容器内部目录中,默认保留 7 天。
1. 核心服务架构
微搭私有化部署包含以下核心服务:
1.1 核心业务服务
weda-allin-one-design(设计态服务)
- 负责应用设计、页面编辑等设计时功能
- 日志路径:
/data/log
allin-one-runtime(运行态服务)
- 负责数据模型、审批流、API 接口、权限管理等运行时功能
- 日志路径:
/data/log
1.2 基础设施服务
proxy
- 请求转发代理服务,负责路由分发
- 日志查看:通过
docker logs或kubectl logs直接查看
weda-plugin-adaptors
- 外部数据源连接服务
- 日志路径:
/data/log
gitness
- 应用构建和发布服务
idaasserver
- 用户鉴权和身份认证服务
- 日志路径:
/logs
2. 故障排查流程
2.1 确定问题范围
当前端界面出现错误时,请按以下步骤定位问题:
- 获取 RequestId:从浏览器开发者工具的网络面板中,找到报错接口的响应头或响应体中的
RequestId - 确定相关服务:根据操作类型判断涉及的服务
- 页面设计相关 →
weda-allin-one-design - 数据操作、API 调用 →
allin-one-runtime - 外部数据源 →
weda-plugin-adaptors
- 页面设计相关 →
2.2 进入服务容器
单机版部署
# 进入运行态服务容器
docker exec -it allin-one-runtime bash
# 进入设计态服务容器
docker exec -it weda-allin-one-design bash
集群版部署
# 1. 查看 Pod 列表(替换 software 为实际命名空间)
kubectl -n software get pods | grep "allin-one-runtime"
# 2. 进入指定 Pod(替换为实际的 Pod 名称)
kubectl -n software exec -it allin-one-runtime-xxxx-yyyy -- bash
2.3 日志分析
进入容器后,执行以下命令进行日志排查:
# 切换到日志目录
cd /data/log
# 根据 RequestId 搜索相关日志
grep "a839bbb426b028" ./*
# 查看最新的错误日志
grep -i "ERROR" ./* | tail -100
# 查看特定时间段的日志
grep "2024-01-15 14:" ./*
日志分析要点:
- 重点关注
ERROR级别的日志信息 - 查看错误发生的时间线和调用链路
- 如无法直接定位问题,建议保存完整日志供技术支持分析
3. 问题反馈规范
为提高问题处理效率,请按以下格式整理问题信息:
3.1 基础信息
错误截图
- 包含完整的错误提示信息
- 浏览器控制台的错误信息
版本信息
# 查看当前部署版本
docker images | grep weda复现步骤
- 详细描述操作步骤
- 提供测试数据或配置信息
- 说明错误出现的频率
3.2 技术信息
接口信息
- 报错的 API 接口地址
- RequestId(如有)
- 请求参数和响应内容
日志信息
- 相关的错误日志片段
- 建议提供前后 50-100 行的上下文日志
通过提供完整的问题信息,可以显著提升问题定位和解决的效率。