diff --git a/.env.development b/.env.development index 3cbdb98..f864fbc 100644 --- a/.env.development +++ b/.env.development @@ -10,7 +10,8 @@ VITE_USE_MOCK=false # API 基础URL # VITE_API_BASE_URL=https://ops-api.apinb.com -VITE_API_BASE_URL=http://127.0.0.1 +# 开发环境走 Vite 同源代理,避免依赖本机 80/443 nginx +VITE_API_BASE_URL= # Logs 本地调试地址(仅 logs 模块使用) VITE_LOGS_API_BASE_URL=http://127.0.0.1:12440 diff --git a/config/vite.config.dev.ts b/config/vite.config.dev.ts index 0ad4630..80e8c58 100644 --- a/config/vite.config.dev.ts +++ b/config/vite.config.dev.ts @@ -2,6 +2,11 @@ import { mergeConfig } from 'vite' // import eslint from 'vite-plugin-eslint' import baseConfig from './vite.config.base' +const proxyTarget = (port: number) => ({ + target: `http://127.0.0.1:${port}`, + changeOrigin: true, +}) + export default mergeConfig( { mode: 'development', @@ -11,6 +16,31 @@ export default mergeConfig( fs: { strict: true, }, + proxy: { + '/rbac2': proxyTarget(10001), + '/Alert': proxyTarget(12427), + '/alert': proxyTarget(12427), + '/DC-Control': proxyTarget(3031), + '/dc-control': proxyTarget(3031), + '/dc-network': proxyTarget(12429), + '/DC-Hardware': proxyTarget(12450), + '/dc-hardware': proxyTarget(12450), + '/dc-host': proxyTarget(9030), + '/dc-middleware': proxyTarget(12428), + '/dc-database': proxyTarget(12580), + '/Feedback': proxyTarget(12432), + '/feedback': proxyTarget(12432), + '/Assets': proxyTarget(12430), + '/assets': proxyTarget(12430), + '/Logs': proxyTarget(12440), + '/logs': proxyTarget(12440), + '/Kb': proxyTarget(12434), + '/kb': proxyTarget(12434), + '/Mgt': proxyTarget(12436), + '/mgt': proxyTarget(12436), + '/Visual': proxyTarget(12438), + '/visual': proxyTarget(12438), + }, }, plugins: [ // eslint({ diff --git a/src/api/ops/server.ts b/src/api/ops/server.ts index ed479f3..a910c61 100644 --- a/src/api/ops/server.ts +++ b/src/api/ops/server.ts @@ -162,6 +162,13 @@ export const fetchServerMetricsSummary = (serverIdentity: string) => { }) } +/** 立即拉取一次主机指标并返回最新统计卡片 */ +export const collectServerMetricsNow = (serverIdentity: string) => { + return request.post<{ code: number; details?: HostMetricsSummary; message?: string }>('/DC-Control/v1/servers/metrics/collect', { + server_identity: serverIdentity, + }) +} + /** 近 N 小时网络收/发速率(Mbps,相邻采样字节差分) */ export const fetchServerNetworkTraffic = (serverIdentity: string, hours = 6) => { return request.get<{ code: number; details?: HostNetworkTrafficPayload; message?: string }>( diff --git a/src/views/ops/pages/dc/server/index.vue b/src/views/ops/pages/dc/server/index.vue index 54dcb0f..dede3b9 100644 --- a/src/views/ops/pages/dc/server/index.vue +++ b/src/views/ops/pages/dc/server/index.vue @@ -120,6 +120,12 @@