summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElizabeth Alexander Hunt <me@liz.coffee>2025-05-10 21:21:41 -0700
committerElizabeth Alexander Hunt <me@liz.coffee>2025-05-10 21:21:41 -0700
commit2c0d7236c6455adf6a14a0430e4a7ae59bb26261 (patch)
tree4ef83fa4a49d244abd89db92b04ef94d0e5c0e11
parent25822257226a3d77e8a5f46c6609f293989342e3 (diff)
downloadci-2c0d7236c6455adf6a14a0430e4a7ae59bb26261.tar.gz
ci-2c0d7236c6455adf6a14a0430e4a7ae59bb26261.zip
Slightly more dense logging in the hooks server
-rw-r--r--hooks/mod.ts24
1 files changed, 19 insertions, 5 deletions
diff --git a/hooks/mod.ts b/hooks/mod.ts
index a8f649c..767720a 100644
--- a/hooks/mod.ts
+++ b/hooks/mod.ts
@@ -1,20 +1,34 @@
#!/usr/bin/env -S deno run --allow-env --allow-net
-import { getStdout, validateIdentifier, getRequiredEnv } from "@liz-ci/utils";
+import { getRequiredEnv, getStdout, validateIdentifier } from "@liz-ci/utils";
-getRequiredEnv("LAMINAR_HOST");
+const getRequestLogger = (req: Request) => {
+ const id = crypto.randomUUID();
+ const url = new URL(req.url);
+ const method = req.method;
+ const getPrefix = () =>
+ `[${new Date().toISOString()}] Request [${id}] @ [${url}] -X [${method}] |`;
+ return {
+ log: (...args: unknown[]) => console.log(getPrefix(), ...args),
+ error: (...args: unknown[]) => console.error(getPrefix(), ...args),
+ };
+};
const addr = { port: 9000, hostname: "0.0.0.0" };
Deno.serve(addr, async (req) => {
+ const logger = getRequestLogger(req);
+ logger.log("Request initiated");
+
const { pathname } = new URL(req.url);
if (pathname === "/health") {
try {
+ getRequiredEnv("LAMINAR_HOST");
await getStdout(["laminarc", "show-jobs"]);
return new Response("think im healthy. lets get to work.", {
status: 200,
});
} catch (e) {
- console.error(e);
+ logger.error(e);
return new Response("i need to eat more vegetables -.-", { status: 500 });
}
}
@@ -42,12 +56,12 @@ Deno.serve(addr, async (req) => {
`rev="${rev}"`,
`refname="${refname}"`,
]);
- console.log(`successful ci queue :D\n` + laminar);
+ logger.log(`successful ci queue :D\n` + laminar);
return new Response(laminar, {
status: 200,
});
} catch (e) {
- console.error(e);
+ logger.error(e);
return new Response("womp womp D:", {
status: 500,
});