Files
web/apps/scandic-web/netlify/utils/hoteldata.ts
Joakim Jäderberg daf765f3d5 Merged in feature/wrap-logging (pull request #2511)
Feature/wrap logging

* feat: change all logging to go through our own logger function so that we can control log levels

* move packages/trpc to using our own logger

* merge


Approved-by: Linus Flood
2025-07-03 12:37:04 +00:00

38 lines
1.1 KiB
TypeScript

import { createLogger } from "@scandic-hotels/common/logger/createLogger"
import type { Lang } from "@scandic-hotels/common/constants/language"
export async function warmupHotelDataOnLang(lang: Lang) {
const warmupHotelDataOnLangLogger = createLogger("warmupHotelDataOnLang")
const PUBLIC_URL = Netlify.env.get("PUBLIC_URL")
warmupHotelDataOnLangLogger.info(
`[WARMUP] Started warmup cache hoteldata for language ${lang} at: ${new Date().toISOString()}!`
)
try {
const hotelsResponse = await fetch(
`${PUBLIC_URL}/api/hoteldata?lang=${lang}`,
{
headers: { cache: "no-store" },
signal: AbortSignal.timeout(30_000),
}
)
if (!hotelsResponse.ok) {
throw new Error(
`[WARMUP] Failed to warmup cache for hotels on language ${lang} with error: ${hotelsResponse.statusText}`
)
}
const hotels = await hotelsResponse.json()
warmupHotelDataOnLangLogger.info(
`[WARMUP] Retrieved ${hotels.length} hotels.`
)
} catch (error) {
warmupHotelDataOnLangLogger.error(
`[WARMUP] Error warming cache with hoteldata on language ${lang} with error: ${error}`
)
}
}