feat: Zabbix 数据源管理 — 完整 CRUD + 双 Tab 数据源页面

后端:
- models/zabbix_datasource.go: Zabbix 数据源 model (15字段, 参照 Grafana)
- handlers/zabbix_datasource.go: CRUD + 测试连接 (调用 Zabbix API Auth)
- routes.go: /zabbix-datasources 路由组
- database.go: AutoMigrate

前端:
- api.ts: zabbixDatasourceApi
- ZabbixDatasourceManager.tsx: 表单 (URL/用户名/密码/Trends设置/DB直连)
- DatasourcePage.tsx: Prometheus + Zabbix 双 Tab 包装
- App.tsx: /datasources 路由更新
This commit is contained in:
attacker committed 2026-06-18 14:14:40 +00:00
1 parent d2201fc8c0
commit c51d0b8b8b
8 files changed
+761 -2

No files matched your search

+2 -2
View File
@@ -33,7 +33,7 @@ import TraceManager from '@/components/monitor/trace/TraceManager';
import HostMonitorDashboard from '@/components/monitor/dashboard/HostMonitorDashboard';
import { MonitorCenter } from '@/pages/MonitorCenter';
import { MetricsExplorer } from '@/pages/MetricsExplorer';
import PrometheusDatasourceManager from '@/components/monitor/datasource/PrometheusDatasourceManager';
import DatasourcePage from '@/components/monitor/datasource/DatasourcePage';
const queryClient = new QueryClient({
defaultOptions: {
@@ -75,7 +75,7 @@ function App() {
<Route path="alert-center" element={<AlertCenter />} />
<Route path="trace" element={<TraceManager />} />
<Route path="dashboards" element={<HostMonitorDashboard />} />
<Route path="datasources" element={<PrometheusDatasourceManager />} />
<Route path="datasources" element={<DatasourcePage />} />
<Route path="alerts" element={<AlertManager />} />
<Route path="logs" element={<AlertManager />} />
<Route path="approval" element={<ApprovalFlowManager />} />