add logging (#187)

This commit is contained in:
KM Koushik
2025-07-26 20:05:34 +10:00
committed by GitHub
parent 5612d7a3eb
commit 202fbeacb6
24 changed files with 490 additions and 134 deletions

View File

@@ -9,6 +9,7 @@ import {
campaignProcedure,
publicProcedure,
} from "~/server/api/trpc";
import { logger } from "~/server/logger/log";
import { nanoid } from "~/server/nanoid";
import {
sendCampaign,
@@ -66,14 +67,15 @@ export const campaignRouter = createTRPCRouter({
let time = performance.now();
campaignsP.then((campaigns) => {
console.log(
logger.info(
`Time taken to get campaigns: ${performance.now() - time} milliseconds`
);
});
const [campaigns, count] = await Promise.all([campaignsP, countP]);
console.log(
`Time taken to complete request: ${performance.now() - completeTime} milliseconds`
logger.info(
{ duration: performance.now() - completeTime },
`Time taken to complete request`
);
return { campaigns, totalPage: Math.ceil(count / limit) };

View File

@@ -10,6 +10,7 @@ import {
} from "~/server/api/trpc";
import { sendTeamInviteEmail } from "~/server/mailer";
import send from "~/server/public-api/api/emails/send-email";
import { logger } from "~/server/logger/log";
export const teamRouter = createTRPCRouter({
createTeam: protectedProcedure
@@ -26,7 +27,7 @@ export const teamRouter = createTRPCRouter({
});
if (teams.length > 0) {
console.log("User already has a team");
logger.info({ userId: ctx.session.user.id }, "User already has a team");
return;
}

View File

@@ -14,6 +14,8 @@ import { env } from "~/env";
import { getServerAuthSession } from "~/server/auth";
import { db } from "~/server/db";
import { getChildLogger, logger, withLogger } from "../logger/log";
import { randomUUID } from "crypto";
/**
* 1. CONTEXT
@@ -118,13 +120,22 @@ export const teamProcedure = protectedProcedure.use(async ({ ctx, next }) => {
if (!teamUser) {
throw new TRPCError({ code: "NOT_FOUND", message: "Team not found" });
}
return next({
ctx: {
team: teamUser.team,
teamUser,
session: { ...ctx.session, user: ctx.session.user },
},
});
return withLogger(
getChildLogger({
teamId: teamUser.team.id,
requestId: randomUUID(),
}),
async () => {
return next({
ctx: {
team: teamUser.team,
teamUser,
session: { ...ctx.session, user: ctx.session.user },
},
});
}
);
});
export const teamAdminProcedure = teamProcedure.use(async ({ ctx, next }) => {