Files
aiops/docs/dev-log.md
T

89 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# EZOps AIOps 开发日志
## 2026-06-13 项目初始化
### 完成项
| 项目 | 状态 | 说明 |
|------|------|------|
| 前端 (React+TS+Vite) | ✅ | React 18 + TypeScript + Tailwind CSS + shadcn/ui |
| 后端 (Go+Gin+GORM) | ✅ | Go + Gin + GORM + JWT + SQLite |
| 数据库 (SQLite) | ✅ | sqlite3.db,CGO 编译 |
| run.sh 启动脚本 | ✅ | 一键 start/stop/restart/status/logs |
| Vite Proxy | ✅ | /api → localhost:8080 |
| docs 文档 | ✅ | 项目结构/API/部署/开发指南 |
### 编译修复记录
| 文件 | 问题 | 修复 |
|------|------|------|
| `auth.go` | jwt/v5 移除了 `TimeFunc()` | 改用 `time.Now()` |
| `mock.go` | 匹配实际 model 定义 | 完全重写 |
| `audit.go` | 编译错误 | 修复字段引用 |
| `database.go` | 不支持 SQLite | 添加 `gorm.io/driver/sqlite` |
| `config.go` | DSN 中 Port 类型转换错误 | 在 database.go 用 `fmt.Sprintf("%d", port)` |
### 技术栈
**后端**
- Go 1.21+ / Gin / GORM
- SQLite (开发环境默认) / MySQL / PostgreSQL (生产可选)
- JWT 认证 / Zap 日志
**前端**
- React 18 + TypeScript + Vite
- Tailwind CSS + shadcn/ui 组件库
- Zustand 状态管理
### 端口分配
| 服务 | 端口 |
|------|------|
| 后端 API | 8080 |
| 前端 Dev Server | 5173 |
### 快速启动
```bash
cd ~/devops/aiops
./run.sh start # 启动前后端
./run.sh status # 查看状态
./run.sh stop # 停止
./run.sh restart # 重启
./run.sh logs # 实时日志
```
访问地址:
- 前端: http://localhost:5173
- 后端: http://localhost:8080
- 健康检查: http://localhost:8080/health
### 数据库
开发环境使用 SQLite,数据库文件位于 `backend/sqlite3.db`,首次启动时 GORM AutoMigrate 自动建表。
## 2026-06-14 02:30 自动推进
- **任务**: 修复仪表盘数据管线 — 补充应用发布种子数据 + 修复 limit 参数解析 bug + LDAP 认证集成 + User 类型完善
- **修改**:
- `backend/internal/api/handlers/dashboard.go` — 修复 GetRecentAlerts 的 limit 参数解析(原代码错误地将数字 limit 解析为日期字符串 `time.Parse("2006-01-02")`),为 GetRecentReleases 添加 limit 参数支持
- `backend/scripts/mock.go` — 新增 generateAppReleases() 生成 10 条应用发布种子数据;修复 AlertEvent 的 rule_id/rule_name/severity 数据一致性(原代码从不同随机规则分别取 id 和 name 导致不匹配)
- `backend/go.mod` / `go.sum` — 添加 github.com/go-ldap/ldap/v3 v3.4.10 依赖(GOTOOLCHAIN=local 避免 Go 1.24+ 工具链升级)
- `backend/cmd/seed.go` — 种子数据初始化(admin 用户 + LDAP 配置,仅首次启动)
- `backend/internal/api/handlers/ldap.go` — LDAP 认证处理器
- `backend/internal/models/user.go` — User model 添加 AuthSource 字段 + LDAPConfig model
- `frontend/src/types/index.ts` — 修复 User 类型定义,添加 real_name/is_admin/auth_source 等字段以匹配后端 API
- 多个前端组件联调优化(暗色主题、API 服务层、组件数据对接)
- **结果**:
- `go build ./...` 编译通过 ✅
- `npm run build` 构建通过 ✅
- 仪表盘「发布历史」区域从空白变为展示 5 条真实发布记录 ✅
- `?limit=N` 参数现在被正确解析 ✅
- 健康检查 /health 正常 ✅
- git push origin master 成功 (commit ff0b268) ✅
- **下一步建议**:
- 服务器管理模块的增删改查前后端联调验证
- K8s 集群监控数据展示(Pod/Deployment/Service 列表页面)
- 告警规则配置页面前端完善
- 成本统计从硬编码改为基于实际云账号数据计算