From 01baf7d3c07e9768ff0e89ef8500540c1b8e425f Mon Sep 17 00:00:00 2001 From: Alex van Andel Date: Mon, 20 Jan 2025 17:04:43 +0000 Subject: [PATCH] chore: Add more logging around getUserAvailability (#18769) * chore: Add more logging around getUserAvailability * Add initialData to logging --- packages/core/getUserAvailability.ts | 42 +++++++++++++++++++--------- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/packages/core/getUserAvailability.ts b/packages/core/getUserAvailability.ts index 4baa35c80d..1555766da6 100644 --- a/packages/core/getUserAvailability.ts +++ b/packages/core/getUserAvailability.ts @@ -286,6 +286,15 @@ const _getUserAvailability = async function getUsersWorkingHoursLifeTheUniverseA shouldServeCache, } = availabilitySchema.parse(query); + log.debug( + `[getUserAvailability] EventType: ${eventTypeId} | User: ${username} (ID: ${userId}) - Called with: ${safeStringify( + { + query, + initialData, + } + )}` + ); + if (!dateFrom.isValid() || !dateTo.isValid()) { throw new HttpError({ statusCode: 400, message: "Invalid time range given." }); } @@ -296,11 +305,9 @@ const _getUserAvailability = async function getUsersWorkingHoursLifeTheUniverseA const user = initialData?.user || (await getUser(where)); - if (!user) throw new HttpError({ statusCode: 404, message: "No user found in getUserAvailability" }); - log.debug( - "getUserAvailability for user", - safeStringify({ user: { id: user.id }, slot: { dateFrom, dateTo } }) - ); + if (!user) { + throw new HttpError({ statusCode: 404, message: "No user found in getUserAvailability" }); + } let eventType: EventType | null = initialData?.eventType || null; if (!eventType && eventTypeId) eventType = await getEventType(eventTypeId); @@ -420,13 +427,14 @@ const _getUserAvailability = async function getUsersWorkingHoursLifeTheUniverseA const isDefaultSchedule = userSchedule && userSchedule.id === schedule?.id; log.debug( - "Using schedule:", - safeStringify({ - chosenSchedule: schedule, - eventTypeSchedule: eventType?.schedule, - userSchedule: userSchedule, - hostSchedule: hostSchedule, - }) + `[getUserAvailability] EventType: ${eventTypeId} | User: ${username} (ID: ${userId}) - usingSchedule: ${safeStringify( + { + chosenSchedule: schedule, + eventTypeSchedule: eventType?.schedule, + userSchedule: userSchedule, + hostSchedule: hostSchedule, + } + )}` ); if ( @@ -566,7 +574,7 @@ const _getUserAvailability = async function getUsersWorkingHoursLifeTheUniverseA const dateRangesInWhichUserIsAvailable = subtract(dateRanges, formattedBusyTimes); const dateRangesInWhichUserIsAvailableWithoutOOO = subtract(oooExcludedDateRanges, formattedBusyTimes); - return { + const result = { busy: detailedBusyTimes, timeZone, dateRanges: dateRangesInWhichUserIsAvailable, @@ -576,6 +584,14 @@ const _getUserAvailability = async function getUsersWorkingHoursLifeTheUniverseA currentSeats, datesOutOfOffice, }; + + log.debug( + `[getUserAvailability] EventType: ${eventTypeId} | User: ${username} (ID: ${userId}) - Result: ${safeStringify( + result + )}` + ); + + return result; }; export const getPeriodStartDatesBetween = (