fix: health endpoint typo and request counter middleware order

This commit is contained in:
Sʜɪɴᴇɪ Nᴏᴜᴢᴇɴ
2026-06-09 04:51:26 +05:30
parent 154258629d
commit 0015e779ea
+19 -16
View File
@@ -57,6 +57,24 @@ import { categoryRoutes } from "./category.route.js";
* createApiRoutes(app, jsonResponse, jsonError);
*/
const createApiRoutes = (app, jsonResponse, jsonError) => {
// ══════════════════════════════════════════════════════════════
// REQUEST COUNTER (must be before all routes)
// ══════════════════════════════════════════════════════════════
const startTime = Date.now();
let requestCount = 0;
let errorCount = 0;
app.use((req, res, next) => {
if (req.path.startsWith("/api")) {
requestCount++;
res.on("finish", () => {
if (res.statusCode >= 400) errorCount++;
});
}
next();
});
// ══════════════════════════════════════════════════════════════
// HOME
// ══════════════════════════════════════════════════════════════
@@ -332,21 +350,6 @@ categoryRoutes(app, jsonResponse, jsonError);
// HEALTH & STATS
// ══════════════════════════════════════════════════════════════
const startTime = Date.now();
let requestCount = 0;
let errorCount = 0;
// Middleware to count requests
app.use((req, res, next) => {
if (req.path.startsWith("/api")) {
requestCount++;
res.on("finish", () => {
if (res.statusCode >= 400) errorCount++;
});
}
next();
});
// ---- FEATURE: Health check endpoint ----
app.get("/api/health", (req, res) => {
const uptime = Math.floor((Date.now() - startTime) / 1000);
@@ -359,7 +362,7 @@ app.get("/api/health", (req, res) => {
results: {
status: "healthy",
version: "1.7.2",
uptime: `${hours}h ${minutes}m ${s}s`,
uptime: `${hours}h ${minutes}m ${seconds}s`,
uptimeSeconds: uptime,
timestamp: new Date().toISOString(),
node: process.version,