refactor(stats): added in ram useage to the stats
This commit is contained in:
@@ -1,36 +1,40 @@
|
|||||||
|
import { format } from "date-fns-tz";
|
||||||
|
import { eq } from "drizzle-orm";
|
||||||
import { Router } from "express";
|
import { Router } from "express";
|
||||||
import { tryCatch } from "../../../pkg/utils/tryCatch.js";
|
|
||||||
import { db } from "../../../pkg/db/db.js";
|
import { db } from "../../../pkg/db/db.js";
|
||||||
import {
|
import {
|
||||||
serverStats,
|
type ServerStats,
|
||||||
type ServerStats,
|
serverStats,
|
||||||
} from "../../../pkg/db/schema/serverstats.js";
|
} from "../../../pkg/db/schema/serverstats.js";
|
||||||
import { eq } from "drizzle-orm";
|
import { tryCatch } from "../../../pkg/utils/tryCatch.js";
|
||||||
import { format } from "date-fns-tz";
|
|
||||||
import { checkBuildUpdate } from "../utlis/checkForBuild.js";
|
import { checkBuildUpdate } from "../utlis/checkForBuild.js";
|
||||||
|
|
||||||
const router = Router();
|
const router = Router();
|
||||||
|
|
||||||
// GET /health
|
// GET /health
|
||||||
router.get("/", async (req, res) => {
|
router.get("/", async (req, res) => {
|
||||||
const { data, error } = await tryCatch(
|
const { data, error } = await tryCatch(
|
||||||
db.select().from(serverStats).where(eq(serverStats.id, "serverStats"))
|
db.select().from(serverStats).where(eq(serverStats.id, "serverStats")),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (error || !data) {
|
if (error || !data) {
|
||||||
res.status(400).json({ error: error });
|
res.status(400).json({ error: error });
|
||||||
}
|
}
|
||||||
|
|
||||||
const statData = data as ServerStats[];
|
const statData = data as ServerStats[];
|
||||||
res.json({
|
const used = process.memoryUsage();
|
||||||
status: "ok",
|
res.json({
|
||||||
uptime: process.uptime(),
|
status: "ok",
|
||||||
build: statData[0]?.build,
|
uptime: process.uptime(),
|
||||||
pendingUpdateFile: await checkBuildUpdate(["."]),
|
build: statData[0]?.build,
|
||||||
lastUpdate: statData[0]?.lastUpdate
|
pendingUpdateFile: await checkBuildUpdate(["."]),
|
||||||
? format(statData[0].lastUpdate, "MM/dd/yyyy HH:mm")
|
lastUpdate: statData[0]?.lastUpdate
|
||||||
: "",
|
? format(statData[0].lastUpdate, "MM/dd/yyyy HH:mm")
|
||||||
});
|
: "",
|
||||||
|
memoryUsage: `Heap: ${(used.heapUsed / 1024 / 1024).toFixed(2)} MB / RSS: ${(
|
||||||
|
used.rss / 1024 / 1024
|
||||||
|
).toFixed(2)} MB`,
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
export default router;
|
export default router;
|
||||||
|
|||||||
Reference in New Issue
Block a user