better logging
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Elizabeth Hunt 2024-12-15 00:00:32 -08:00
parent 4fd40b1f9d
commit 630387f889
Signed by: simponic
GPG Key ID: 2909B9A7FF6213EE
3 changed files with 22 additions and 7 deletions

View File

@ -17,19 +17,31 @@ export const main = (port: number) => {
jobInsensitive.to.username = "****REDACTED****"; jobInsensitive.to.username = "****REDACTED****";
jobInsensitive.to.password = "****REDACTED****"; jobInsensitive.to.password = "****REDACTED****";
const uuid = crypto.randomUUID();
ConsoleLogger.log( ConsoleLogger.log(
`Received email job: ${JSON.stringify(jobInsensitive)}`, `[${uuid}] Received email job: ${JSON.stringify(jobInsensitive)}`,
)(); )();
const performEmailTest = perform(job)(); const performEmailTest = perform(job)();
return await performEmailTest return performEmailTest
.then(() => { .then((result) => {
return Response.json({ success: true }); if (result._tag === "Left") {
}) const error = result.left;
.catch((error) => { ConsoleLogger.log(
`[${uuid}] job failure due to ${error.message}`,
)();
return new Response(error.message, { return new Response(error.message, {
status: 400, status: 400,
}); });
}
ConsoleLogger.log(`[${uuid}] success`)();
return Response.json({ success: true });
})
.catch((e) => {
ConsoleLogger.log(`[${uuid}] internal failure due to ${e}`)();
return new Response(e.message, {
status: 500,
});
}); });
} }
return new Response("404!", { status: 404 }); return new Response("404!", { status: 404 });

View File

@ -192,7 +192,9 @@ const findEmailUidInInbox: FindEmailUidInInbox = (
TE.fold( TE.fold(
(e) => (e) =>
pipe( pipe(
TE.fromIO(ConsoleLogger.log(`failed; ${retries} retries left.`)), TE.fromIO(
ConsoleLogger.log(`failed to find email; ${retries} retries left.`),
),
TE.chain(() => TE.chain(() =>
retries === 0 retries === 0
? TE.left(e) ? TE.left(e)

View File

@ -14,6 +14,7 @@ export interface EmailToInstruction extends EmailInstruction {
} }
export interface EmailJob { export interface EmailJob {
requestId: string;
from: EmailFromInstruction; from: EmailFromInstruction;
to: EmailToInstruction; to: EmailToInstruction;
readRetry: Retry; readRetry: Retry;