Skip to content
This repository was archived by the owner on Jan 10, 2025. It is now read-only.

Commit faa1646

Browse files
committed
feat: health and ready checks
1 parent ab2092d commit faa1646

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

substream-listener/src/index.mts

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {
99
import { logger } from "./logger.mjs";
1010
import { createScheduler } from "./scheduler.mjs";
1111

12-
const { schedule, start, stop } = createScheduler({
12+
const { schedule, start, stop, readiness } = createScheduler({
1313
queueName: "substream-sink-scheduler",
1414
logger: logger.child({ module: "substream-sink-scheduler" }),
1515
redis: {
@@ -152,6 +152,27 @@ const router = createRouter({
152152
message: "Webhook registered",
153153
});
154154
},
155+
})
156+
.route({
157+
path: "/health",
158+
method: "GET",
159+
async handler() {
160+
return Response.json({ status: "ok" }, { status: 200 });
161+
},
162+
})
163+
.route({
164+
path: "/ready",
165+
method: "GET",
166+
handler() {
167+
const isReady = readiness();
168+
169+
return Response.json(
170+
{ status: isReady ? "ok" : "not ready" },
171+
{
172+
status: isReady ? 200 : 503,
173+
},
174+
);
175+
},
155176
});
156177

157178
const webhookServer = App()

0 commit comments

Comments
 (0)