import { prisma } from "@repo/db"; import promClient from "prom-client"; export const promRegister = new promClient.Registry(); promClient.collectDefaultMetrics({ register: promRegister }); export const connectedPilots = new promClient.Gauge({ name: "connected_pilots", help: "Counts connected pilots", registers: [promRegister], collect: async () => { const count = await prisma.connectedAircraft.count({ where: { logoutTime: null, }, }); connectedPilots.set(count); }, }); export const connectedDispatcher = new promClient.Gauge({ name: "connected_dispatcher", help: "Counts connected dispatchers", registers: [promRegister], collect: async () => { const count = await prisma.connectedDispatcher.count({ where: { logoutTime: null, }, }); connectedDispatcher.set(count); }, }); promRegister.registerMetric(connectedPilots); promRegister.registerMetric(connectedDispatcher);