Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/openstatusHQ/openstatus. ๐ซ Status page with uptime monitoring & API monitoring as code ๐ซ openstatus.dev
bun drizzle-orm monitoring monitoring-as-code nextjs observability on-call open-source shadcn-ui status-page statuspage synthetic-monitoring tinybird turso uptime uptime-checker uptime-monitor
Something went wrong. Try again.
742 B ยท 30 lines
TypeScript
12345678910111213141516171819202122232425262728293031import { serve } from "@hono/node-server";import { getLogger } from "@logtape/logtape";
import { shutdownOutbox, startOutboxConsumer } from "./checker/outbox";import { startScheduler, stopScheduler } from "./cron/scheduler";import { env } from "./env";import { app } from "./index";
const { NODE_ENV, PORT } = env();
const logger = getLogger(["workflow"]);
logger.info("Starting server", { port: PORT, environment: NODE_ENV,});
startOutboxConsumer();startScheduler();
const server = serve({ fetch: app.fetch, port: PORT });
process.on("SIGTERM", () => { void (async () => { logger.info("SIGTERM received, releasing outbox claims"); await stopScheduler(); await shutdownOutbox(); server.close(); })();});