Files
aiartstudio/server/api/images/stats.get.ts
T
2026-04-26 01:13:38 +08:00

38 lines
1.1 KiB
TypeScript

// server/api/images/stats.get.ts - 生图统计接口:返回全局生图请求与成功失败统计。
import type { IImageGenerationStatsData } from "#shared/types/openai";
/**
* GET /api/images/stats
*
* 流程:
* 1. 读取 GenerationStats 的 global 单行统计。
* 2. 没有统计行时返回全 0,避免前端需要处理空状态。
* 3. 该接口返回全局统计,不包含用户输入、图片地址或上游响应。
*/
export default defineEventHandler(async () => {
const logger = createApiLogger("images.stats");
logger.info("开始");
try {
const result = await getGenerationStats();
logger.done("成功", {
totalRequests: result.totalRequests,
successRequests: result.successRequests,
failedRequests: result.failedRequests,
runningRequests: result.runningRequests,
totalImages: result.totalImages
});
return createSuccessResponse<IImageGenerationStatsData>(
result,
"获取生图统计成功"
);
} catch (error) {
logger.error("失败", {
error: toSafeLogError(error)
});
return createUpstreamErrorResponse(error, "获取生图统计失败");
}
});