feat: 完善堡垒机与 Agent 智能运维能力
- 支持 Windows Agent 构建、安装脚本和统一上报协议 - 增强 RDP 剪贴板、虚拟盘和文件传输能力 - 新增 AIOps 上下文工具、告警 RCA trace 落库和回放接口 - 重构 docs 模块文档并补充终端、堡垒机、监控、AI Agent 设计
This commit is contained in:
1 parent
a9513c2056
commit
e0d652d211
169 files changed
+12192
-9116
No files matched your search
@@ -0,0 +1,143 @@
|
||||
# 日志中心设计说明
|
||||
|
||||
> 更新:2026-07-05
|
||||
> 范围:Loki/Elasticsearch 数据源、统一日志查询、字段发现、查询历史、保存查询、日志告警、日志 RBAC。// Logan.Li
|
||||
|
||||
---
|
||||
|
||||
## 定位
|
||||
|
||||
日志中心负责把多种日志后端统一成一个查询工作台,重点不是采集日志,而是:
|
||||
|
||||
1. 管理日志数据源。
|
||||
2. 代理查询 Loki / Elasticsearch。
|
||||
3. 提供统一查询体验和结果展示。
|
||||
4. 从查询条件生成日志告警。
|
||||
5. 按用户/角色限制可见数据源、索引、标签范围。
|
||||
|
||||
---
|
||||
|
||||
## 能力矩阵
|
||||
|
||||
| 能力 | 当前状态 | 说明 |
|
||||
|------|----------|------|
|
||||
| Loki 查询代理 | 已完成 | 后端代理查询,前端统一展示 |
|
||||
| ES 查询代理 | 已完成 | 支持索引、字段、结果解析 |
|
||||
| 日志数据源管理 | 已完成 | 创建、测试、配置 |
|
||||
| 查询编辑器 | 已完成 | 快速查询、自动补全、查询构建 |
|
||||
| 时间范围 | 已完成 | TimeRangePicker |
|
||||
| 字段侧栏 | 已完成 | 字段统计和过滤 |
|
||||
| 查询历史/保存查询 | 已完成 | 前端交互能力 |
|
||||
| 日志告警 | 已完成 | 从查询创建告警规则 |
|
||||
| 日志 RBAC | 已完成 | log scope role |
|
||||
|
||||
---
|
||||
|
||||
## 主要代码落点
|
||||
|
||||
| 层 | 文件 / 目录 | 说明 |
|
||||
|----|-------------|------|
|
||||
| 后端控制器 | `backend/controller/log_datasource.go` | 日志数据源 CRUD |
|
||||
| 后端控制器 | `backend/controller/log_proxy.go` | Loki/ES 查询代理 |
|
||||
| 后端控制器 | `backend/controller/log_proxy_explore.go` | 探索式查询能力 |
|
||||
| 后端控制器 | `backend/controller/log_scope_role.go` | 日志范围权限 |
|
||||
| 后端模型 | `backend/model/log_datasource.go` | 日志数据源 |
|
||||
| 后端模型 | `backend/model/log_scope_role.go` | 日志 RBAC |
|
||||
| 前端 API | `frontend/src/api/log/` | 日志中心 API |
|
||||
| 前端组件 | `frontend/src/components/monitor/log-center/` | 日志中心完整 UI |
|
||||
|
||||
---
|
||||
|
||||
## 查询链路
|
||||
|
||||
```text
|
||||
LogCenter UI
|
||||
├── select datasource
|
||||
├── build query
|
||||
├── choose time range
|
||||
└── GET/POST /api/v1/log/...
|
||||
│
|
||||
▼
|
||||
Backend log proxy
|
||||
├── load datasource
|
||||
├── check log RBAC
|
||||
├── translate request
|
||||
├── query Loki / ES
|
||||
├── normalize response
|
||||
└── return unified result
|
||||
```
|
||||
|
||||
统一结果建议包含:
|
||||
|
||||
| 字段 | 说明 |
|
||||
|------|------|
|
||||
| `timestamp` | 日志时间 |
|
||||
| `message` | 原始消息 |
|
||||
| `labels` | Loki label 或 ES 字段标签 |
|
||||
| `fields` | 结构化字段 |
|
||||
| `source` | 数据源和索引/stream |
|
||||
| `raw` | 原始日志对象 |
|
||||
|
||||
---
|
||||
|
||||
## 数据源模型
|
||||
|
||||
| 字段 | 说明 |
|
||||
|------|------|
|
||||
| `name` | 数据源名称 |
|
||||
| `type` | loki / elasticsearch |
|
||||
| `endpoint` | 服务地址 |
|
||||
| `auth_type` | none / basic / token |
|
||||
| `config` | 索引、租户、TLS、超时等 JSON |
|
||||
| `status` | active / inactive |
|
||||
|
||||
敏感字段必须后端加密或脱敏返回,前端不应展示密码/token。
|
||||
|
||||
---
|
||||
|
||||
## 日志告警
|
||||
|
||||
```text
|
||||
Saved Query / Current Query
|
||||
→ create log alert rule
|
||||
→ alert engine query log datasource
|
||||
→ match count / pattern
|
||||
→ create alert event
|
||||
→ notify policy
|
||||
```
|
||||
|
||||
建议规则字段:
|
||||
|
||||
| 字段 | 说明 |
|
||||
|------|------|
|
||||
| `datasource_id` | 日志数据源 |
|
||||
| `query` | Loki LogQL 或 ES DSL/QueryString |
|
||||
| `time_window` | 查询窗口 |
|
||||
| `condition` | count > N / contains / no data |
|
||||
| `severity` | warning / critical |
|
||||
| `labels` | 业务、环境、服务 |
|
||||
|
||||
---
|
||||
|
||||
## 日志 RBAC
|
||||
|
||||
日志权限不只按页面菜单控制,还应按数据范围控制:
|
||||
|
||||
| 维度 | 示例 |
|
||||
|------|------|
|
||||
| 数据源 | 只能看生产 Loki,不能看审计 ES |
|
||||
| 索引/stream | 只能看 `app-*` |
|
||||
| 标签 | `namespace=dev`、`app=order` |
|
||||
| 查询语法 | 禁止超大范围、禁止敏感索引 |
|
||||
|
||||
---
|
||||
|
||||
## 验收清单
|
||||
|
||||
1. Loki 数据源测试成功并能查询日志。
|
||||
2. ES 数据源测试成功并能查询索引日志。
|
||||
3. 查询时间范围切换后 URL/状态同步正确。
|
||||
4. 字段侧栏能展示字段和值分布。
|
||||
5. 从查询创建日志告警后能触发事件。
|
||||
6. 无权限用户无法查询受限数据源或标签。
|
||||
7. 查询超时、后端不可达时前端错误明确。
|
||||
Reference in new issue
Block a user