Files
BYW-VoiceHub/server/api/system/status.get.ts
T
Henry_Du 4ce4649aaf
Build VoiceHub FPK / build-fpk (push) Failing after 56m5s
Build and Push Docker Image / build-and-push (push) Canceled after 1h9m35s
初次提交
2026-09-06 08:19:02 +08:00

51 lines
1.4 KiB
TypeScript

import { defineEventHandler } from 'h3'
import { databaseManager } from '~~/server/utils/database-manager'
export default defineEventHandler(async (event) => {
try {
// 获取数据库连接状态
const dbStatus = await databaseManager.getConnectionStatus()
const poolStatus = await databaseManager.getConnectionPoolStatus()
// 数据库连接测试结果
const dbTestResult = dbStatus.connected
const dbError = dbStatus.connected ? null : dbStatus.error
// 获取系统信息
const systemInfo = {
timestamp: new Date().toISOString(),
uptime: process.uptime(),
nodeVersion: process.version,
platform: process.platform,
arch: process.arch,
memory: {
used: Math.round(process.memoryUsage().heapUsed / 1024 / 1024),
total: Math.round(process.memoryUsage().heapTotal / 1024 / 1024),
external: Math.round(process.memoryUsage().external / 1024 / 1024)
}
}
// 返回完整的系统状态
return {
status: 'ok',
database: {
connected: dbTestResult,
poolStatus: poolStatus,
connectionInfo: dbStatus,
error: dbError
},
system: systemInfo
}
} catch (error) {
return {
status: 'error',
error: error.message,
database: {
connected: false,
poolStatus: null,
error: error.message
}
}
}
})