Merged in chore/redirect-counter (pull request #3302)
Counter name is now searchable and add counter for redirects * refactor: createCounter() only takes one argument, the name of the counter. Makes it easier to search for * feat: add counter when we do a redirect from redirect-service Approved-by: Linus Flood
This commit is contained in:
@@ -14,7 +14,7 @@ import type { JWT } from "next-auth/jwt"
|
||||
const authLogger = createLogger("auth")
|
||||
export const PRE_REFRESH_TIME_IN_SECONDS = 180
|
||||
|
||||
export const signInCounter = createCounter("auth", "signIn")
|
||||
export const signInCounter = createCounter("auth.signIn")
|
||||
|
||||
async function refreshTokens(token: JWT) {
|
||||
try {
|
||||
|
||||
@@ -35,7 +35,7 @@ async function linkEmployeeToUser(
|
||||
employeeId: string,
|
||||
accessToken: string
|
||||
): Promise<LinkEmployeeResult> {
|
||||
const apiCallCounter = createCounter("dtmc.api", "team_member_card")
|
||||
const apiCallCounter = createCounter("dtmc.api.team_member_card")
|
||||
const metricsApiCall = apiCallCounter.init({ employee_id: employeeId })
|
||||
|
||||
metricsApiCall.start()
|
||||
@@ -121,7 +121,7 @@ async function linkEmployeeToUser(
|
||||
* here we can check both sessions, the Scandic Friends one and the Azure one.
|
||||
*/
|
||||
export async function GET(request: NextRequest) {
|
||||
const dtmcLinkCounter = createCounter("dtmc.employee", "link")
|
||||
const dtmcLinkCounter = createCounter("dtmc.employee.link")
|
||||
const metricsEmployeeLink = dtmcLinkCounter.init()
|
||||
|
||||
metricsEmployeeLink.start()
|
||||
|
||||
@@ -25,7 +25,7 @@ import {
|
||||
export const dynamic = "force-dynamic"
|
||||
|
||||
export async function GET(request: NextRequest) {
|
||||
const generateSitemapCounter = createCounter("sitemap", "generate")
|
||||
const generateSitemapCounter = createCounter("sitemap.generate")
|
||||
const metricsGenerateSitemap = generateSitemapCounter.init()
|
||||
try {
|
||||
metricsGenerateSitemap.start()
|
||||
@@ -44,7 +44,7 @@ export async function GET(request: NextRequest) {
|
||||
const responseData = await contentstackSync(syncToken)
|
||||
const mergedEntries = mergeEntries(currentEntries, responseData.entries)
|
||||
|
||||
const entriesSaveCounter = createCounter("sitemap", "entries.save")
|
||||
const entriesSaveCounter = createCounter("sitemap.entries.save")
|
||||
const metricsEntriesSave = entriesSaveCounter.init({
|
||||
entriesCount: mergedEntries.length,
|
||||
})
|
||||
@@ -59,7 +59,7 @@ export async function GET(request: NextRequest) {
|
||||
const sitemapData = mapEntriesToSitemapData(mergedEntries, hotelFilters)
|
||||
const lastUpdated = dt().utc().format()
|
||||
|
||||
const saveDataCounter = createCounter("sitemap", "data.save")
|
||||
const saveDataCounter = createCounter("sitemap.data.save")
|
||||
const metricsDataSave = saveDataCounter.init({
|
||||
sitemapEntriesCount: sitemapData.length,
|
||||
lastUpdated,
|
||||
@@ -70,7 +70,7 @@ export async function GET(request: NextRequest) {
|
||||
metricsDataSave.success()
|
||||
|
||||
if (syncToken !== responseData.syncToken) {
|
||||
const syncTokenSaveCounter = createCounter("sitemap", "syncToken.save")
|
||||
const syncTokenSaveCounter = createCounter("sitemap.syncToken.save")
|
||||
const metricsSyncTokenSave = syncTokenSaveCounter.init({
|
||||
syncToken: responseData.syncToken,
|
||||
})
|
||||
|
||||
@@ -19,7 +19,7 @@ export async function contentstackSync(syncToken: string | null) {
|
||||
const entries = []
|
||||
const syncOptions = syncToken ? { sync_token: syncToken } : { init: true }
|
||||
|
||||
const entriesSyncCounter = createCounter("sitemap", "entries.sync")
|
||||
const entriesSyncCounter = createCounter("sitemap.entries.sync")
|
||||
const metricsEntriesSync = entriesSyncCounter.init({
|
||||
environment,
|
||||
...syncOptions,
|
||||
@@ -33,8 +33,7 @@ export async function contentstackSync(syncToken: string | null) {
|
||||
entries.push(...syncResponse.items)
|
||||
|
||||
const entriesSyncPaginationCounter = createCounter(
|
||||
"sitemap",
|
||||
"entries.sync.pagination"
|
||||
"sitemap.entries.sync.pagination"
|
||||
)
|
||||
const metricsEntriesSyncPagination = entriesSyncPaginationCounter.init({
|
||||
environment,
|
||||
|
||||
@@ -15,7 +15,7 @@ export function mergeEntries(
|
||||
currentEntries: SyncItem[],
|
||||
newEntries: SyncItem[]
|
||||
) {
|
||||
const entriesMergeCounter = createCounter("sitemap", "entries.merge")
|
||||
const entriesMergeCounter = createCounter("sitemap.entries.merge")
|
||||
const metricsEntriesMerge = entriesMergeCounter.init({
|
||||
currentEntriesCount: currentEntries.length,
|
||||
newEntriesCount: newEntries.length,
|
||||
@@ -57,8 +57,7 @@ export function mergeEntries(
|
||||
|
||||
export function mapEntriesToHotelFilters(entries: SyncItem[]) {
|
||||
const entriesTransformToHotelFiltersCounter = createCounter(
|
||||
"sitemap",
|
||||
"entries.transform.hotelFilters"
|
||||
"sitemap.entries.transform.hotelFilters"
|
||||
)
|
||||
const metricsEntriesTransformToHotelFilters =
|
||||
entriesTransformToHotelFiltersCounter.init({
|
||||
@@ -93,11 +92,10 @@ export function mapEntriesToSitemapData(
|
||||
entries: SyncItem[],
|
||||
hotelFilters: HotelFilterEntries
|
||||
) {
|
||||
const entriesTransformCounter = createCounter("sitemap", "entries.transform")
|
||||
const entriesTransformCounter = createCounter("sitemap.entries.transform")
|
||||
const metricsEntriesTransform = entriesTransformCounter.init({
|
||||
entriesCount: entries.length,
|
||||
})
|
||||
|
||||
metricsEntriesTransform.start()
|
||||
|
||||
const filteredEntries = filterEntriesToSitemapEntries(entries)
|
||||
|
||||
@@ -10,7 +10,7 @@ import { env } from "@/env/server"
|
||||
import type { JWT } from "next-auth/jwt"
|
||||
import type { OIDCConfig } from "next-auth/providers"
|
||||
|
||||
export const signInCounter = createCounter("auth", "signIn")
|
||||
export const signInCounter = createCounter("auth.signIn")
|
||||
|
||||
function getLoginType(user: User) {
|
||||
if (user?.login_with.includes("@")) {
|
||||
|
||||
@@ -2,6 +2,7 @@ import { type NextMiddleware, NextResponse } from "next/server"
|
||||
|
||||
import { getCacheClient } from "@scandic-hotels/common/dataCache"
|
||||
import { logger } from "@scandic-hotels/common/logger"
|
||||
import { createCounter } from "@scandic-hotels/common/telemetry"
|
||||
import { findLang } from "@scandic-hotels/common/utils/languages"
|
||||
|
||||
import { notFound } from "@/server/errors/next"
|
||||
@@ -45,7 +46,7 @@ async function fetchAndCacheRedirect(lang: Lang, pathname: string) {
|
||||
"1d"
|
||||
)
|
||||
}
|
||||
|
||||
const redirectCounter = createCounter("middleware.redirect")
|
||||
export const middleware: NextMiddleware = async (request) => {
|
||||
const lang = findLang(request.nextUrl.pathname)!
|
||||
const headers = getDefaultRequestHeaders(request)
|
||||
@@ -56,6 +57,14 @@ export const middleware: NextMiddleware = async (request) => {
|
||||
)
|
||||
|
||||
if (matchedRedirect) {
|
||||
redirectCounter
|
||||
.init({
|
||||
lang,
|
||||
pathname: request.nextUrl.pathname,
|
||||
newPathname: matchedRedirect,
|
||||
})
|
||||
.success()
|
||||
|
||||
const newUrl = new URL(matchedRedirect, getPublicNextURL(request))
|
||||
headers.set("Cache-control", "public, max-age=14400") // 4 hours
|
||||
return NextResponse.redirect(newUrl, {
|
||||
|
||||
@@ -63,9 +63,8 @@ export function sanitize(data: any): Record<string, string | number | boolean> {
|
||||
*
|
||||
* See the codebase for reference usage.
|
||||
*/
|
||||
export function createCounter(meterName: string, counterName: string) {
|
||||
const fullName = `${meterName}.${counterName}`
|
||||
|
||||
export function createCounter(meterName: string) {
|
||||
return {
|
||||
/**
|
||||
* Initializes the counter event handlers with a set of base attributes.
|
||||
@@ -82,7 +81,7 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
* @param attrs - Additional attributes specific to this 'start' event. Defaults to an empty object.
|
||||
*/
|
||||
start(attrs: object | undefined = undefined) {
|
||||
logger.debug(`[${fullName}] start`, attrs)
|
||||
logger.debug(`[${meterName}] start`, attrs)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -93,10 +92,10 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
success(attrs: object = {}) {
|
||||
const mergedAttrs = deepmerge.all<object>([baseAttrs, attrs])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "success" },
|
||||
})
|
||||
logger.debug(`[${fullName}] success`, mergedAttrs)
|
||||
logger.debug(`[${meterName}] success`, mergedAttrs)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -119,10 +118,10 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "error" },
|
||||
})
|
||||
logger.error(`[${fullName}] dataError: ${errorMsg}`, mergedAttrs)
|
||||
logger.error(`[${meterName}] dataError: ${errorMsg}`, mergedAttrs)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -143,10 +142,10 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "error" },
|
||||
})
|
||||
logger.error(`[${fullName}] noDataError:`, mergedAttrs)
|
||||
logger.error(`[${meterName}] noDataError:`, mergedAttrs)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -165,10 +164,10 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "error" },
|
||||
})
|
||||
logger.error(`[${fullName}] validationError`, mergedAttrs)
|
||||
logger.error(`[${meterName}] validationError`, mergedAttrs)
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -196,11 +195,11 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "error" },
|
||||
})
|
||||
logger.error(
|
||||
`[${fullName}] httpError ${res.status}, ${res.statusText}:`,
|
||||
`[${meterName}] httpError ${res.status}, ${res.statusText}:`,
|
||||
mergedAttrs
|
||||
)
|
||||
},
|
||||
@@ -231,10 +230,10 @@ export function createCounter(meterName: string, counterName: string) {
|
||||
])
|
||||
const finalAttrs = sanitize(mergedAttrs)
|
||||
|
||||
Sentry.metrics.count(fullName, 1, {
|
||||
Sentry.metrics.count(meterName, 1, {
|
||||
attributes: { ...finalAttrs, status: "error" },
|
||||
})
|
||||
logger.error(`[${fullName}] fail message: ${msg}`, mergedAttrs)
|
||||
logger.error(`[${meterName}] fail message: ${msg}`, mergedAttrs)
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
@@ -57,8 +57,7 @@ async function getJwt(scopes: string[]) {
|
||||
|
||||
async function fetchServiceToken(scopes: string[]) {
|
||||
const fetchServiceTokenCounter = createCounter(
|
||||
"tokenManager",
|
||||
"fetchServiceToken"
|
||||
"tokenManager.fetchServiceToken"
|
||||
)
|
||||
const metricsFetchServiceToken = fetchServiceTokenCounter.init({
|
||||
scopes,
|
||||
|
||||
@@ -22,7 +22,7 @@ export const create = safeProtectedServiceProcedure
|
||||
const { language, ...inputWithoutLang } = input
|
||||
const { rooms, ...loggableInput } = inputWithoutLang
|
||||
|
||||
const createBookingCounter = createCounter("trpc.booking", "create")
|
||||
const createBookingCounter = createCounter("trpc.booking.create")
|
||||
|
||||
const metricsCreateBooking = createBookingCounter.init({
|
||||
language,
|
||||
|
||||
@@ -37,7 +37,7 @@ export const bookingMutationRouter = router({
|
||||
.mutation(async function ({ ctx }) {
|
||||
const { confirmationNumber } = ctx
|
||||
|
||||
const priceChangeCounter = createCounter("trpc.booking", "price-change")
|
||||
const priceChangeCounter = createCounter("trpc.booking.price-change")
|
||||
const metricsPriceChange = priceChangeCounter.init({ confirmationNumber })
|
||||
|
||||
metricsPriceChange.start()
|
||||
@@ -127,7 +127,7 @@ export const bookingMutationRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
const { language, refId, ...body } = input
|
||||
|
||||
const addPackageCounter = createCounter("trpc.booking", "package.add")
|
||||
const addPackageCounter = createCounter("trpc.booking.package.add")
|
||||
const metricsAddPackage = addPackageCounter.init({
|
||||
confirmationNumber,
|
||||
language,
|
||||
@@ -181,7 +181,7 @@ export const bookingMutationRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
const { language, refId, ...body } = input
|
||||
|
||||
const guaranteeBookingCounter = createCounter("trpc.booking", "guarantee")
|
||||
const guaranteeBookingCounter = createCounter("trpc.booking.guarantee")
|
||||
const metricsGuaranteeBooking = guaranteeBookingCounter.init({
|
||||
confirmationNumber,
|
||||
language,
|
||||
@@ -235,7 +235,7 @@ export const bookingMutationRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
const { language, refId, ...body } = input
|
||||
|
||||
const updateBookingCounter = createCounter("trpc.booking", "update")
|
||||
const updateBookingCounter = createCounter("trpc.booking.update")
|
||||
const metricsUpdateBooking = updateBookingCounter.init({
|
||||
confirmationNumber,
|
||||
language,
|
||||
@@ -287,10 +287,7 @@ export const bookingMutationRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
const { codes, language } = input
|
||||
|
||||
const removePackageCounter = createCounter(
|
||||
"trpc.booking",
|
||||
"package.remove"
|
||||
)
|
||||
const removePackageCounter = createCounter("trpc.booking.package.remove")
|
||||
const metricsRemovePackage = removePackageCounter.init({
|
||||
confirmationNumber,
|
||||
codes,
|
||||
@@ -337,8 +334,7 @@ export const bookingMutationRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
|
||||
const resendConfirmationCounter = createCounter(
|
||||
"trpc.booking",
|
||||
"confirmation.resend"
|
||||
"trpc.booking.confirmation.resend"
|
||||
)
|
||||
const metricsResendConfirmation = resendConfirmationCounter.init({
|
||||
confirmationNumber,
|
||||
|
||||
@@ -43,7 +43,7 @@ export const bookingQueryRouter = router({
|
||||
.query(async function ({ ctx }) {
|
||||
const { confirmationNumber, lang, token, serviceToken } = ctx
|
||||
|
||||
const getBookingCounter = createCounter("trpc.booking", "get")
|
||||
const getBookingCounter = createCounter("trpc.booking.get")
|
||||
const metricsGetBooking = getBookingCounter.init({ confirmationNumber })
|
||||
|
||||
metricsGetBooking.start()
|
||||
@@ -110,7 +110,7 @@ export const bookingQueryRouter = router({
|
||||
input: { confirmationNumber, lastName, firstName, email },
|
||||
}) {
|
||||
const { lang, token, serviceToken } = ctx
|
||||
const findBookingCounter = createCounter("trpc.booking", "findBooking")
|
||||
const findBookingCounter = createCounter("trpc.booking.findBooking")
|
||||
const metricsFindBooking = findBookingCounter.init({ confirmationNumber })
|
||||
|
||||
metricsFindBooking.start()
|
||||
@@ -180,8 +180,7 @@ export const bookingQueryRouter = router({
|
||||
const { confirmationNumber, lang, token } = ctx
|
||||
|
||||
const getLinkedReservationsCounter = createCounter(
|
||||
"trpc.booking",
|
||||
"linkedReservations"
|
||||
"trpc.booking.linkedReservations"
|
||||
)
|
||||
const metricsGetLinkedReservations = getLinkedReservationsCounter.init({
|
||||
confirmationNumber,
|
||||
@@ -230,7 +229,7 @@ export const bookingQueryRouter = router({
|
||||
const { confirmationNumber } = ctx
|
||||
const language = toApiLang(lang)
|
||||
|
||||
const getBookingStatusCounter = createCounter("trpc.booking", "status")
|
||||
const getBookingStatusCounter = createCounter("trpc.booking.status")
|
||||
const metricsGetBookingStatus = getBookingStatusCounter.init({
|
||||
confirmationNumber,
|
||||
})
|
||||
|
||||
@@ -13,7 +13,7 @@ export async function getBooking(
|
||||
lang: Lang,
|
||||
token: string
|
||||
) {
|
||||
const getBookingCounter = createCounter("booking", "get")
|
||||
const getBookingCounter = createCounter("booking.get")
|
||||
const metricsGetBooking = getBookingCounter.init({ confirmationNumber })
|
||||
|
||||
metricsGetBooking.start()
|
||||
@@ -60,7 +60,7 @@ export async function findBooking(
|
||||
firstName?: string,
|
||||
email?: string
|
||||
) {
|
||||
const findBookingCounter = createCounter("booking", "find")
|
||||
const findBookingCounter = createCounter("booking.find")
|
||||
const metricsGetBooking = findBookingCounter.init({
|
||||
confirmationNumber,
|
||||
lastName,
|
||||
@@ -114,7 +114,7 @@ export async function cancelBooking(
|
||||
language: Lang,
|
||||
token: string
|
||||
) {
|
||||
const cancelBookingCounter = createCounter("booking", "cancel")
|
||||
const cancelBookingCounter = createCounter("booking.cancel")
|
||||
const metricsCancelBooking = cancelBookingCounter.init({
|
||||
confirmationNumber,
|
||||
language,
|
||||
|
||||
@@ -25,8 +25,7 @@ export const usePointsModalQueryRouter = router({
|
||||
get: contentstackBaseProcedure.query(async ({ ctx }) => {
|
||||
const { lang, uid } = ctx
|
||||
const getRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"usePointsModal.get.refs"
|
||||
"trpc.contentstack.usePointsModal.get.refs"
|
||||
)
|
||||
const metricsRefs = getRefsCounter.init({
|
||||
lang,
|
||||
@@ -60,7 +59,7 @@ export const usePointsModalQueryRouter = router({
|
||||
|
||||
metricsRefs.success()
|
||||
|
||||
const getCounter = createCounter("trpc.contentstack", "usePointsModal.get")
|
||||
const getCounter = createCounter("trpc.contentstack.usePointsModal.get")
|
||||
|
||||
const metrics = getCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -27,8 +27,7 @@ export const accountPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getAccountPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"accountPage.get.refs"
|
||||
"trpc.contentstack.accountPage.get.refs"
|
||||
)
|
||||
const metricsRefs = getAccountPageRefsCounter.init({ lang, uid })
|
||||
metricsRefs.start()
|
||||
@@ -69,8 +68,7 @@ export const accountPageQueryRouter = router({
|
||||
metricsRefs.success()
|
||||
|
||||
const getAccountPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"accountPage.get"
|
||||
"trpc.contentstack.accountPage.get"
|
||||
)
|
||||
const metrics = getAccountPageCounter.init({ lang, uid })
|
||||
metrics.start()
|
||||
|
||||
@@ -60,8 +60,7 @@ import type {
|
||||
|
||||
const getContactConfig = cache(async (lang: Lang) => {
|
||||
const getContactConfigCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"contactConfig.get"
|
||||
"trpc.contentstack.contactConfig.get"
|
||||
)
|
||||
const metricsGetContactConfig = getContactConfigCounter.init({ lang })
|
||||
|
||||
@@ -104,8 +103,7 @@ export const baseQueryRouter = router({
|
||||
const { lang } = ctx
|
||||
|
||||
const getHeaderRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"header.get.refs"
|
||||
"trpc.contentstack.header.get.refs"
|
||||
)
|
||||
const metricsGetHeaderRefs = getHeaderRefsCounter.init({ lang })
|
||||
|
||||
@@ -139,7 +137,7 @@ export const baseQueryRouter = router({
|
||||
|
||||
const connections = getConnections(validatedHeaderRefs.data)
|
||||
|
||||
const getHeaderCounter = createCounter("trpc.contentstack", "header.get")
|
||||
const getHeaderCounter = createCounter("trpc.contentstack.header.get")
|
||||
const metricsGetHeader = getHeaderCounter.init({ lang })
|
||||
|
||||
metricsGetHeader.start()
|
||||
@@ -178,8 +176,7 @@ export const baseQueryRouter = router({
|
||||
const { lang } = ctx
|
||||
|
||||
const getFooterRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"footer.get.refs"
|
||||
"trpc.contentstack.footer.get.refs"
|
||||
)
|
||||
const metricsGetFooterRefs = getFooterRefsCounter.init({ lang })
|
||||
|
||||
@@ -216,7 +213,7 @@ export const baseQueryRouter = router({
|
||||
const connections = getFooterConnections(validatedFooterRefs.data)
|
||||
const footerUID = responseRef.data.all_footer.items[0].system.uid
|
||||
|
||||
const getFooterCounter = createCounter("trpc.contentstack", "footer.get")
|
||||
const getFooterCounter = createCounter("trpc.contentstack.footer.get")
|
||||
const metricsGetFooter = getFooterCounter.init({ lang })
|
||||
|
||||
metricsGetFooter.start()
|
||||
@@ -263,8 +260,7 @@ export const baseQueryRouter = router({
|
||||
const lang = input.lang ?? ctx.lang
|
||||
|
||||
const getSitewideCampaignBannerRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"sitewideCampaignBanner.get.refs"
|
||||
"trpc.contentstack.sitewideCampaignBanner.get.refs"
|
||||
)
|
||||
const metricsGetSitewideCampaignBannerRefs =
|
||||
getSitewideCampaignBannerRefsCounter.init({
|
||||
@@ -307,8 +303,7 @@ export const baseQueryRouter = router({
|
||||
metricsGetSitewideCampaignBannerRefs.success()
|
||||
|
||||
const getSitewideCampaignBannerCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"sitewideCampaignBanner.get"
|
||||
"trpc.contentstack.sitewideCampaignBanner.get"
|
||||
)
|
||||
const metricsGetSitewideCampaignBanner =
|
||||
getSitewideCampaignBannerCounter.init({
|
||||
@@ -353,8 +348,7 @@ export const baseQueryRouter = router({
|
||||
const lang = input.lang ?? ctx.lang
|
||||
|
||||
const getSiteConfigRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"siteConfig.get.refs"
|
||||
"trpc.contentstack.siteConfig.get.refs"
|
||||
)
|
||||
const metricsGetSiteConfigRefs = getSiteConfigRefsCounter.init({ lang })
|
||||
|
||||
@@ -397,8 +391,7 @@ export const baseQueryRouter = router({
|
||||
metricsGetSiteConfigRefs.success()
|
||||
|
||||
const getSiteConfigCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"siteConfig.get"
|
||||
"trpc.contentstack.siteConfig.get"
|
||||
)
|
||||
const metricsGetSiteConfig = getSiteConfigCounter.init({ lang })
|
||||
|
||||
|
||||
@@ -74,8 +74,7 @@ const getBreadcrumbs = cache(async function fetchMemoizedBreadcrumbs<T>(
|
||||
{ uid, lang }: { uid: string; lang: Lang }
|
||||
) {
|
||||
const getBreadcrumbsRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"breadcrumbs.get.refs"
|
||||
"trpc.contentstack.breadcrumbs.get.refs"
|
||||
)
|
||||
const metricsGetBreadcrumbsRefs = getBreadcrumbsRefsCounter.init({
|
||||
lang,
|
||||
@@ -107,8 +106,7 @@ const getBreadcrumbs = cache(async function fetchMemoizedBreadcrumbs<T>(
|
||||
const tags = getTags(validatedRefsData.data, lang)
|
||||
|
||||
const getBreadcrumbsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"breadcrumbs.get"
|
||||
"trpc.contentstack.breadcrumbs.get"
|
||||
)
|
||||
const metricsGetBreadcrumbs = getBreadcrumbsCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -26,8 +26,7 @@ export const campaignOverviewPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getCampaignOverviewPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignOverviewPage.get.refs"
|
||||
"trpc.contentstack.campaignOverviewPage.get.refs"
|
||||
)
|
||||
const metricsGetCampaignOverviewPageRefs =
|
||||
getCampaignOverviewPageRefsCounter.init({
|
||||
@@ -67,8 +66,7 @@ export const campaignOverviewPageQueryRouter = router({
|
||||
const tags = generatePageTags(validatedRefsData.data, lang)
|
||||
|
||||
const getCampaignOverviewPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignOverviewPage.get"
|
||||
"trpc.contentstack.campaignOverviewPage.get"
|
||||
)
|
||||
const metricsGetCampaignOverviewPage = getCampaignOverviewPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -23,8 +23,7 @@ export const campaignPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getCampaignPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignPage.get.refs"
|
||||
"trpc.contentstack.campaignPage.get.refs"
|
||||
)
|
||||
const metricsGetCampaignPageRefs = getCampaignPageRefsCounter.init({
|
||||
lang,
|
||||
@@ -60,8 +59,7 @@ export const campaignPageQueryRouter = router({
|
||||
const tags = generatePageTags(validatedRefsData.data, lang)
|
||||
|
||||
const getCampaignPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignPage.get"
|
||||
"trpc.contentstack.campaignPage.get"
|
||||
)
|
||||
const metricsGetCampaignPage = getCampaignPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -106,8 +106,7 @@ export async function getCampaignPagesByHotelPageUid(
|
||||
) {
|
||||
const today = dt().format("YYYY-MM-DD")
|
||||
const getCampaignPagesByHotelUidRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignPage.byHotelUid.get.refs"
|
||||
"trpc.contentstack.campaignPage.byHotelUid.get.refs"
|
||||
)
|
||||
const metricsGetCampaignPagesByHotelUidRefs =
|
||||
getCampaignPagesByHotelUidRefsCounter.init({
|
||||
@@ -156,8 +155,7 @@ export async function getCampaignPagesByHotelPageUid(
|
||||
const tags = generateTagsFromSystem(lang, validatedRefsData.data)
|
||||
|
||||
const getCampaignPagesByHotelUidCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"campaignPage.byHotelUid.get"
|
||||
"trpc.contentstack.campaignPage.byHotelUid.get"
|
||||
)
|
||||
const metricsGetCampaignPagesByHotelUid =
|
||||
getCampaignPagesByHotelUidCounter.init({
|
||||
|
||||
@@ -31,8 +31,7 @@ export const collectionPageQueryRouter = router({
|
||||
const tags = generatePageTags(collectionPageRefs, lang)
|
||||
|
||||
const getCollectionPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"collectionPage.get"
|
||||
"trpc.contentstack.collectionPage.get"
|
||||
)
|
||||
const metricsGetCollectionPage = getCollectionPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -21,8 +21,7 @@ import type { System } from "../schemas/system"
|
||||
|
||||
export async function fetchCollectionPageRefs(lang: Lang, uid: string) {
|
||||
const getCollectionPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"collectionPage.get.refs"
|
||||
"trpc.contentstack.collectionPage.get.refs"
|
||||
)
|
||||
const metricsGetCollectionPageRefs = getCollectionPageRefsCounter.init({
|
||||
lang,
|
||||
@@ -60,8 +59,7 @@ export function validateCollectionPageRefs(
|
||||
uid: string
|
||||
) {
|
||||
const getCollectionPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"collectionPage.get.refs"
|
||||
"trpc.contentstack.collectionPage.get.refs"
|
||||
)
|
||||
const metricsGetCollectionPageRefs = getCollectionPageRefsCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -27,8 +27,7 @@ export const contentPageQueryRouter = router({
|
||||
const tags = generatePageTags(contentPageRefs, lang)
|
||||
|
||||
const getContentPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"contentPage.get"
|
||||
"trpc.contentstack.contentPage.get"
|
||||
)
|
||||
const metricsGetContentPage = getContentPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -24,8 +24,7 @@ import type { System } from "../schemas/system"
|
||||
|
||||
export async function fetchContentPageRefs(lang: Lang, uid: string) {
|
||||
const getContentPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"contentPage.get.refs"
|
||||
"trpc.contentstack.contentPage.get.refs"
|
||||
)
|
||||
const metricsGetContentPageRefs = getContentPageRefsCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -27,8 +27,7 @@ export const destinationCityPageQueryRouter = router({
|
||||
const { lang, uid, serviceToken } = ctx
|
||||
|
||||
const getDestinationCityPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationCityPage.get.refs"
|
||||
"trpc.contentstack.destinationCityPage.get.refs"
|
||||
)
|
||||
const metricsGetDestinationCityPageRefs =
|
||||
getDestinationCityPageRefsCounter.init({ lang, uid })
|
||||
@@ -63,8 +62,7 @@ export const destinationCityPageQueryRouter = router({
|
||||
const tags = generatePageTags(validatedRefsData.data, lang)
|
||||
|
||||
const getDestinationCityPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationCityPage.get"
|
||||
"trpc.contentstack.destinationCityPage.get"
|
||||
)
|
||||
const metricsGetDestinationCityPage = getDestinationCityPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -72,8 +72,7 @@ export function getConnections({
|
||||
|
||||
export async function getCityPageCount(lang: Lang) {
|
||||
const getCityPageCountCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"cityPageCount.get"
|
||||
"trpc.contentstack.cityPageCount.get"
|
||||
)
|
||||
const metricsGetCityPageCount = getCityPageCountCounter.init({ lang })
|
||||
|
||||
@@ -111,8 +110,7 @@ export async function getCityPageCount(lang: Lang) {
|
||||
|
||||
export async function getCityPageUrls(lang: Lang) {
|
||||
const getCityPageUrlsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"cityPageUrls.get"
|
||||
"trpc.contentstack.cityPageUrls.get"
|
||||
)
|
||||
const metricsGetCityPageUrls = getCityPageUrlsCounter.init({ lang })
|
||||
|
||||
|
||||
@@ -31,8 +31,7 @@ export const destinationCountryPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getDestinationCountryPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationCountryPage.get.refs"
|
||||
"trpc.contentstack.destinationCountryPage.get.refs"
|
||||
)
|
||||
const metricsGetDestinationCountryPageRefs =
|
||||
getDestinationCountryPageRefsCounter.init({ lang, uid })
|
||||
@@ -69,8 +68,7 @@ export const destinationCountryPageQueryRouter = router({
|
||||
const tags = generatePageTags(validatedRefsData.data, lang)
|
||||
|
||||
const getDestinationCountryPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationCountryPage.get"
|
||||
"trpc.contentstack.destinationCountryPage.get"
|
||||
)
|
||||
const metricsGetDestinationCountryPage =
|
||||
getDestinationCountryPageCounter.init({ lang, uid })
|
||||
|
||||
@@ -74,8 +74,7 @@ export async function getCityListDataByCityIdentifier(
|
||||
cityIdentifier: string
|
||||
) {
|
||||
const getCityListDataCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"cityListData.get"
|
||||
"trpc.contentstack.cityListData.get"
|
||||
)
|
||||
const metricsGetCityListData = getCityListDataCounter.init({
|
||||
lang,
|
||||
@@ -161,8 +160,7 @@ export async function getCityPages(
|
||||
|
||||
export async function getCountryPageUrls(lang: Lang) {
|
||||
const getCountryPageUrlsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"getCountryPageUrls"
|
||||
"trpc.contentstack.getCountryPageUrls"
|
||||
)
|
||||
const metricsGetCountryPageUrls = getCountryPageUrlsCounter.init({ lang })
|
||||
|
||||
|
||||
@@ -42,8 +42,7 @@ export const destinationOverviewPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getDestinationOverviewPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationOverviewPage.get.refs"
|
||||
"trpc.contentstack.destinationOverviewPage.get.refs"
|
||||
)
|
||||
const metricsGetDestinationOverviewPageRefs =
|
||||
getDestinationOverviewPageRefsCounter.init({ lang, uid })
|
||||
@@ -81,8 +80,7 @@ export const destinationOverviewPageQueryRouter = router({
|
||||
metricsGetDestinationOverviewPageRefs.success()
|
||||
|
||||
const getDestinationOverviewPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"destinationOverviewPage.get"
|
||||
"trpc.contentstack.destinationOverviewPage.get"
|
||||
)
|
||||
const metricsGetDestinationOverviewPage =
|
||||
getDestinationOverviewPageCounter.init({ lang, uid })
|
||||
|
||||
@@ -16,10 +16,7 @@ export const hotelPageQueryRouter = router({
|
||||
get: contentstackExtendedProcedureUID.query(async ({ ctx }) => {
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getHotelPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"hotelPage.get"
|
||||
)
|
||||
const getHotelPageCounter = createCounter("trpc.contentstack.hotelPage.get")
|
||||
const metricsGetHotelPage = getHotelPageCounter.init({ lang, uid })
|
||||
|
||||
metricsGetHotelPage.start()
|
||||
|
||||
@@ -15,8 +15,7 @@ import type {
|
||||
|
||||
export async function getHotelPageCount(lang: Lang) {
|
||||
const getHotelPageCountCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"hotelPageCount.get"
|
||||
"trpc.contentstack.hotelPageCount.get"
|
||||
)
|
||||
const metricsGetHotelPageCount = getHotelPageCountCounter.init({ lang })
|
||||
|
||||
@@ -52,8 +51,7 @@ export async function getHotelPageCount(lang: Lang) {
|
||||
|
||||
export async function getHotelPageUrls(lang: Lang) {
|
||||
const getHotelPageUrlsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"hotelPageUrls.get"
|
||||
"trpc.contentstack.hotelPageUrls.get"
|
||||
)
|
||||
const metricsGetHotelPageUrls = getHotelPageUrlsCounter.init({ lang })
|
||||
|
||||
|
||||
@@ -74,8 +74,7 @@ export async function getUrlsOfAllLanguages(
|
||||
)
|
||||
|
||||
const getLanguageSwitcherCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"languageSwitcher.get"
|
||||
"trpc.contentstack.languageSwitcher.get"
|
||||
)
|
||||
const metricsGetLanguageSwitcher = getLanguageSwitcherCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -26,8 +26,7 @@ import type { Lang } from "@scandic-hotels/common/constants/language"
|
||||
|
||||
export const getAllLoyaltyLevels = cache(async (lang: Lang) => {
|
||||
const getLoyaltyLevelAllCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"loyaltyLevel.all"
|
||||
"trpc.contentstack.loyaltyLevel.all"
|
||||
)
|
||||
const metricsGetLoyaltyLevelAll = getLoyaltyLevelAllCounter.init()
|
||||
|
||||
@@ -70,8 +69,7 @@ export const getAllLoyaltyLevels = cache(async (lang: Lang) => {
|
||||
export const getLoyaltyLevel = cache(
|
||||
async (lang: Lang, level_id: MembershipLevel) => {
|
||||
const getLoyaltyLevelCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"loyaltyLevel.get"
|
||||
"trpc.contentstack.loyaltyLevel.get"
|
||||
)
|
||||
const metricsGetLoyaltyLevel = getLoyaltyLevelCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -27,8 +27,7 @@ export const loyaltyPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getLoyaltyPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"loyaltyPage.get.refs"
|
||||
"trpc.contentstack.loyaltyPage.get.refs"
|
||||
)
|
||||
const metricsGetLoyaltyPageRefs = getLoyaltyPageRefsCounter.init({
|
||||
lang,
|
||||
@@ -71,8 +70,7 @@ export const loyaltyPageQueryRouter = router({
|
||||
].flat()
|
||||
|
||||
const getLoyaltyPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"loyaltyPage.get"
|
||||
"trpc.contentstack.loyaltyPage.get"
|
||||
)
|
||||
const metricsGetLoyaltyPage = getLoyaltyPageCounter.init({ lang, uid })
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ const fetchMetadata = cache(async function fetchMemoizedMetadata<T>(
|
||||
query: string | DocumentNode,
|
||||
{ uid, lang }: { uid: string; lang: Lang }
|
||||
) {
|
||||
const getMetadataCounter = createCounter("trpc.contentstack", "metadata.get")
|
||||
const getMetadataCounter = createCounter("trpc.contentstack.metadata.get")
|
||||
const metricsGetMetadata = getMetadataCounter.init({ lang, uid })
|
||||
|
||||
metricsGetMetadata.start()
|
||||
@@ -241,8 +241,7 @@ export const metadataQueryRouter = router({
|
||||
}
|
||||
|
||||
const transformMetadataCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"metadata.transform"
|
||||
"trpc.contentstack.metadata.transform"
|
||||
)
|
||||
const metricsTransformMetadata = transformMetadataCounter.init()
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@ type SasTierComparisonResponse = z.input<typeof validateSasTierComparisonSchema>
|
||||
|
||||
export const getSasTierComparison = cache(async (lang: Lang) => {
|
||||
const getSasTierComparisonCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"partner.getSasTierComparison"
|
||||
"trpc.contentstack.partner.getSasTierComparison"
|
||||
)
|
||||
const metricsGetSasTierComparison = getSasTierComparisonCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -19,8 +19,7 @@ export const profilingConsentQueryRouter = router({
|
||||
const tag = `${lang}:profiling_consent`
|
||||
|
||||
const getProfilingConsentCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"profilingConsent.get"
|
||||
"trpc.contentstack.profilingConsent.get"
|
||||
)
|
||||
const metricsGetProfilingConsent = getProfilingConsentCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -23,8 +23,7 @@ export const promoCampaignPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getPromoCampaignPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"promoCampaignPage.get.refs"
|
||||
"trpc.contentstack.promoCampaignPage.get.refs"
|
||||
)
|
||||
const metricsGetPromoCampaignPageRefs =
|
||||
getPromoCampaignPageRefsCounter.init({
|
||||
@@ -61,8 +60,7 @@ export const promoCampaignPageQueryRouter = router({
|
||||
const tags = generatePageTags(validatedRefsData.data, lang)
|
||||
|
||||
const getPromoCampaignPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"promoCampaignPage.get"
|
||||
"trpc.contentstack.promoCampaignPage.get"
|
||||
)
|
||||
const metricsGetPromoCampaignPage = getPromoCampaignPageCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -33,8 +33,7 @@ export const rewardQueryRouter = router({
|
||||
.input(rewardsAllInput)
|
||||
.query(async function ({ input, ctx }) {
|
||||
const getContentstackRewardAllCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.all"
|
||||
"trpc.contentstack.reward.all"
|
||||
)
|
||||
const metricsGetContentstackRewardAll =
|
||||
getContentstackRewardAllCounter.init()
|
||||
@@ -113,8 +112,7 @@ export const rewardQueryRouter = router({
|
||||
const { level_id } = input
|
||||
|
||||
const getRewardByLevelCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.byLevel"
|
||||
"trpc.contentstack.reward.byLevel"
|
||||
)
|
||||
const metricsGetRewardByLevel = getRewardByLevelCounter.init({
|
||||
level_id,
|
||||
@@ -180,8 +178,7 @@ export const rewardQueryRouter = router({
|
||||
.input(langInput.optional()) // lang is required for client, but not for server
|
||||
.query(async function ({ ctx }) {
|
||||
const getCurrentRewardCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.current"
|
||||
"trpc.contentstack.reward.current"
|
||||
)
|
||||
const metricsGetCurrentReward = getCurrentRewardCounter.init()
|
||||
|
||||
@@ -238,10 +235,7 @@ export const rewardQueryRouter = router({
|
||||
surprises: contentStackBaseWithProtectedProcedure
|
||||
.input(langInput.optional()) // lang is required for client, but not for server
|
||||
.query(async ({ ctx }) => {
|
||||
const getSurprisesCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"surprises"
|
||||
)
|
||||
const getSurprisesCounter = createCounter("trpc.contentstack.surprises")
|
||||
const metricsGetSurprises = getSurprisesCounter.init()
|
||||
|
||||
metricsGetSurprises.start()
|
||||
@@ -304,8 +298,7 @@ export const rewardQueryRouter = router({
|
||||
input.map(({ rewardId, couponCode }) => {
|
||||
async function handleUnwrap() {
|
||||
const getUnwrapSurpriseCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.unwrap"
|
||||
"trpc.contentstack.reward.unwrap"
|
||||
)
|
||||
|
||||
const metricsGetUnwrapSurprise = getUnwrapSurpriseCounter.init({
|
||||
@@ -357,10 +350,7 @@ export const rewardQueryRouter = router({
|
||||
.mutation(async ({ input, ctx }) => {
|
||||
const { rewardId, couponCode } = input
|
||||
|
||||
const getRedeemCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.redeem"
|
||||
)
|
||||
const getRedeemCounter = createCounter("trpc.contentstack.reward.redeem")
|
||||
|
||||
const metricGetRedeem = getRedeemCounter.init({ rewardId, couponCode })
|
||||
|
||||
|
||||
@@ -40,8 +40,7 @@ export async function getCachedAllTierRewards(token: string) {
|
||||
"getAllTierRewards",
|
||||
async () => {
|
||||
const getApiRewardAllTiersCounter = createCounter(
|
||||
"trpc.api",
|
||||
"reward.allTiers"
|
||||
"trpc.api.reward.allTiers"
|
||||
)
|
||||
const metricsGetApiRewardAllTiers = getApiRewardAllTiersCounter.init()
|
||||
|
||||
@@ -90,8 +89,7 @@ export async function getCmsRewards(lang: Lang, rewardIds: string[]) {
|
||||
)
|
||||
|
||||
const getContentstackRewardAllRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.all.refs"
|
||||
"trpc.contentstack.reward.all.refs"
|
||||
)
|
||||
const metricsGetContentstackRewardAllRefs =
|
||||
getContentstackRewardAllRefsCounter.init({ lang, rewardIds })
|
||||
@@ -126,8 +124,7 @@ export async function getCmsRewards(lang: Lang, rewardIds: string[]) {
|
||||
metricsGetContentstackRewardAllRefs.success()
|
||||
|
||||
const getContentstackRewardAllCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"reward.all"
|
||||
"trpc.contentstack.reward.all"
|
||||
)
|
||||
const metricsGetContentstackRewardAll = getContentstackRewardAllCounter.init({
|
||||
lang,
|
||||
|
||||
@@ -24,8 +24,9 @@ import type { blocksSchema } from "./output"
|
||||
export interface GetStartPageData extends z.input<typeof startPageSchema> {}
|
||||
export interface StartPage extends z.output<typeof startPageSchema> {}
|
||||
|
||||
export interface GetStartPageRefsSchema
|
||||
extends z.input<typeof startPageRefsSchema> {}
|
||||
export interface GetStartPageRefsSchema extends z.input<
|
||||
typeof startPageRefsSchema
|
||||
> {}
|
||||
|
||||
export type Block = z.output<typeof blocksSchema>
|
||||
|
||||
@@ -34,8 +35,7 @@ export const startPageQueryRouter = router({
|
||||
const { lang, uid } = ctx
|
||||
|
||||
const getStartPageRefsCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"startPage.get.refs"
|
||||
"trpc.contentstack.startPage.get.refs"
|
||||
)
|
||||
const metricsGetStartPageRefs = getStartPageRefsCounter.init({ lang, uid })
|
||||
|
||||
@@ -67,10 +67,7 @@ export const startPageQueryRouter = router({
|
||||
|
||||
metricsGetStartPageRefs.success()
|
||||
|
||||
const getStartPageCounter = createCounter(
|
||||
"trpc.contentstack",
|
||||
"startPage.get"
|
||||
)
|
||||
const getStartPageCounter = createCounter("trpc.contentstack.startPage.get")
|
||||
const metricsGetStartPage = getStartPageCounter.init({ lang, uid })
|
||||
|
||||
metricsGetStartPage.start()
|
||||
|
||||
@@ -16,7 +16,7 @@ export const urls = publicProcedure
|
||||
.query(async ({ input }) => {
|
||||
const { lang } = input
|
||||
|
||||
const locationsUrlsCounter = createCounter("trpc.hotel.locations", "urls")
|
||||
const locationsUrlsCounter = createCounter("trpc.hotel.locations.urls")
|
||||
const metricsLocationsUrls = locationsUrlsCounter.init({
|
||||
lang,
|
||||
})
|
||||
|
||||
@@ -117,8 +117,7 @@ export const hotelQueryRouter = router({
|
||||
let hotelsToFetch: string[] = []
|
||||
|
||||
const getHotelsByCSFilterCounter = createCounter(
|
||||
"trpc.hotel.hotels",
|
||||
"byCSFilter"
|
||||
"trpc.hotel.hotels.byCSFilter"
|
||||
)
|
||||
const metricsGetHotelsByCSFilter = getHotelsByCSFilterCounter.init({
|
||||
input,
|
||||
@@ -296,10 +295,7 @@ export const hotelQueryRouter = router({
|
||||
return cacheClient.cacheOrGet(
|
||||
`${apiLang}:nearbyHotels:${hotelId}`,
|
||||
async () => {
|
||||
const nearbyHotelsCounter = createCounter(
|
||||
"trpc.hotel",
|
||||
"nearbyHotelIds"
|
||||
)
|
||||
const nearbyHotelsCounter = createCounter("trpc.hotel.nearbyHotelIds")
|
||||
const metricsNearbyHotels = nearbyHotelsCounter.init({
|
||||
params,
|
||||
hotelId,
|
||||
@@ -392,7 +388,7 @@ export const hotelQueryRouter = router({
|
||||
hotelId,
|
||||
language,
|
||||
}
|
||||
const meetingRoomsCounter = createCounter("trpc.hotel", "meetingRooms")
|
||||
const meetingRoomsCounter = createCounter("trpc.hotel.meetingRooms")
|
||||
const metricsMeetingRooms = meetingRoomsCounter.init({
|
||||
params,
|
||||
})
|
||||
@@ -453,10 +449,7 @@ export const hotelQueryRouter = router({
|
||||
language,
|
||||
}
|
||||
|
||||
const additionalDataCounter = createCounter(
|
||||
"trpc.hotel",
|
||||
"additionalData"
|
||||
)
|
||||
const additionalDataCounter = createCounter("trpc.hotel.additionalData")
|
||||
const metricsAdditionalData = additionalDataCounter.init({
|
||||
params,
|
||||
})
|
||||
@@ -517,10 +510,7 @@ export const hotelQueryRouter = router({
|
||||
language: apiLang,
|
||||
}
|
||||
|
||||
const breakfastCounter = createCounter(
|
||||
"trpc.hotel.packages",
|
||||
"breakfast"
|
||||
)
|
||||
const breakfastCounter = createCounter("trpc.hotel.packages.breakfast")
|
||||
const metricsBreakfast = breakfastCounter.init({
|
||||
params,
|
||||
hotelId: input.hotelId,
|
||||
@@ -597,10 +587,7 @@ export const hotelQueryRouter = router({
|
||||
language: apiLang,
|
||||
}
|
||||
|
||||
const ancillaryCounter = createCounter(
|
||||
"trpc.hotel.packages",
|
||||
"ancillary"
|
||||
)
|
||||
const ancillaryCounter = createCounter("trpc.hotel.packages.ancillary")
|
||||
const metricsAncillary = ancillaryCounter.init({
|
||||
params,
|
||||
hotelId: input.hotelId,
|
||||
|
||||
@@ -16,7 +16,7 @@ export const getHotel = cache(
|
||||
const { language, isCardOnlyPayment } = input
|
||||
const hotelId = input.hotelId.trim()
|
||||
|
||||
const getHotelCounter = createCounter("hotel", "getHotel")
|
||||
const getHotelCounter = createCounter("hotel.getHotel")
|
||||
const metricsGetHotel = getHotelCounter.init({
|
||||
hotelId,
|
||||
language,
|
||||
|
||||
@@ -12,10 +12,7 @@ export async function getHotelIdsByCityId({
|
||||
cityId: string
|
||||
serviceToken: string
|
||||
}) {
|
||||
const getHotelIdsByCityIdCounter = createCounter(
|
||||
"hotel",
|
||||
"getHotelIdsByCityId"
|
||||
)
|
||||
const getHotelIdsByCityIdCounter = createCounter("hotel.getHotelIdsByCityId")
|
||||
const metricsGetHotelIdsByCityId = getHotelIdsByCityIdCounter.init({
|
||||
cityId,
|
||||
})
|
||||
|
||||
@@ -13,8 +13,7 @@ export async function getHotelIdsByCountry({
|
||||
serviceToken: string
|
||||
}) {
|
||||
const getHotelIdsByCountryCounter = createCounter(
|
||||
"hotel",
|
||||
"getHotelIdsByCountry"
|
||||
"hotel.getHotelIdsByCountry"
|
||||
)
|
||||
|
||||
const metricsGetHotelIdsByCountry = getHotelIdsByCountryCounter.init({
|
||||
|
||||
@@ -45,8 +45,7 @@ export async function getHotelsAvailabilityByCity({
|
||||
} satisfies Record<string, string | number>
|
||||
|
||||
const getHotelsAvailabilityByCityCounter = createCounter(
|
||||
"hotel",
|
||||
"getHotelsAvailabilityByCity"
|
||||
"hotel.getHotelsAvailabilityByCity"
|
||||
)
|
||||
const metricsGetHotelsAvailabilityByCity =
|
||||
getHotelsAvailabilityByCityCounter.init({
|
||||
|
||||
@@ -47,8 +47,7 @@ export async function getHotelsAvailabilityByHotelIds({
|
||||
])
|
||||
|
||||
const getHotelsAvailabilityByHotelIdsCounter = createCounter(
|
||||
"hotel",
|
||||
"getHotelsAvailabilityByHotelIds"
|
||||
"hotel.getHotelsAvailabilityByHotelIds"
|
||||
)
|
||||
const metricsGetHotelsAvailabilityByHotelIds =
|
||||
getHotelsAvailabilityByHotelIdsCounter.init({
|
||||
|
||||
@@ -13,7 +13,7 @@ export async function getPackages(input: PackagesOutput, serviceToken: string) {
|
||||
const { adults, children, endDate, hotelId, lang, packageCodes, startDate } =
|
||||
input
|
||||
|
||||
const getPackagesCounter = createCounter("hotel", "getPackages")
|
||||
const getPackagesCounter = createCounter("hotel.getPackages")
|
||||
const metricsGetPackages = getPackagesCounter.init({
|
||||
input,
|
||||
})
|
||||
|
||||
@@ -34,8 +34,7 @@ export async function getRoomFeaturesInventory(
|
||||
}
|
||||
|
||||
const getRoomFeaturesInventoryCounter = createCounter(
|
||||
"hotel",
|
||||
"getRoomFeaturesInventory"
|
||||
"hotel.getRoomFeaturesInventory"
|
||||
)
|
||||
const metricsGetRoomFeaturesInventory =
|
||||
getRoomFeaturesInventoryCounter.init(params)
|
||||
|
||||
@@ -29,8 +29,7 @@ export async function getRoomsAvailability(
|
||||
const redemption = searchType === SEARCH_TYPE_REDEMPTION
|
||||
|
||||
const getRoomsAvailabilityCounter = createCounter(
|
||||
"hotel",
|
||||
"getRoomsAvailability"
|
||||
"hotel.getRoomsAvailability"
|
||||
)
|
||||
const metricsGetRoomsAvailability = getRoomsAvailabilityCounter.init({
|
||||
input,
|
||||
|
||||
@@ -15,7 +15,7 @@ const feedUrl =
|
||||
export const jobylonQueryRouter = router({
|
||||
feed: router({
|
||||
get: publicProcedure.query(async function () {
|
||||
const jobylonFeedGetCounter = createCounter("trpc.jobylon.feed", "get")
|
||||
const jobylonFeedGetCounter = createCounter("trpc.jobylon.feed.get")
|
||||
const metricsJobylonFeedGet = jobylonFeedGetCounter.init()
|
||||
|
||||
metricsJobylonFeedGet.start()
|
||||
|
||||
@@ -157,8 +157,7 @@ export const userMutationRouter = router({
|
||||
ctx,
|
||||
}) {
|
||||
const generatePreferencesLinkCounter = createCounter(
|
||||
"trpc.user",
|
||||
"generatePreferencesLink"
|
||||
"trpc.user.generatePreferencesLink"
|
||||
)
|
||||
|
||||
const metricsGeneratePreferencesLink = generatePreferencesLinkCounter.init()
|
||||
@@ -196,7 +195,7 @@ export const userMutationRouter = router({
|
||||
ctx,
|
||||
input,
|
||||
}) {
|
||||
const signupCounter = createCounter("trpc.user", "signup")
|
||||
const signupCounter = createCounter("trpc.user.signup")
|
||||
const metricsSignup = signupCounter.init()
|
||||
|
||||
const apiResponse = await api.post(api.endpoints.v2.Profile.profile, {
|
||||
@@ -224,8 +223,7 @@ export const userMutationRouter = router({
|
||||
.input(profilingConsentInput)
|
||||
.mutation(async function ({ ctx, input }) {
|
||||
const profilingConsentCounter = createCounter(
|
||||
"trpc.user",
|
||||
"profilingConsent"
|
||||
"trpc.user.profilingConsent"
|
||||
)
|
||||
const metricsProfilingConsent = profilingConsentCounter.init()
|
||||
|
||||
@@ -252,8 +250,7 @@ export const userMutationRouter = router({
|
||||
.input(profilingConsentPromptDateInput)
|
||||
.mutation(async function ({ ctx, input }) {
|
||||
const profilingConsentPromptDateCounter = createCounter(
|
||||
"trpc.user",
|
||||
"profilingConsentPromptDate"
|
||||
"trpc.user.profilingConsentPromptDate"
|
||||
)
|
||||
const metricsProfilingConsentPromptDate =
|
||||
profilingConsentPromptDateCounter.init()
|
||||
|
||||
@@ -234,8 +234,7 @@ export const userQueryRouter = router({
|
||||
const { limit, page, lang } = input
|
||||
|
||||
const friendTransactionsCounter = createCounter(
|
||||
"trpc.user.transactions",
|
||||
"friendTransactions"
|
||||
"trpc.user.transactions.friendTransactions"
|
||||
)
|
||||
|
||||
const metricsFriendTransactions = friendTransactionsCounter.init({
|
||||
|
||||
@@ -26,7 +26,7 @@ export const userTrackingInfo = safeProtectedProcedure.query(async function ({
|
||||
})
|
||||
|
||||
async function getScandicFriendsUserTrackingData(session: Session | null) {
|
||||
const userTrackingInfoCounter = createCounter("user", "userTrackingInfo")
|
||||
const userTrackingInfoCounter = createCounter("user.userTrackingInfo")
|
||||
const metricsUserTrackingInfo = userTrackingInfoCounter.init()
|
||||
|
||||
metricsUserTrackingInfo.start()
|
||||
|
||||
@@ -15,7 +15,7 @@ export const getCreditCards = cache(
|
||||
session: Session
|
||||
onlyNonExpired?: boolean
|
||||
}) => {
|
||||
const getCreditCardsCounter = createCounter("user", "getCreditCards")
|
||||
const getCreditCardsCounter = createCounter("user.getCreditCards")
|
||||
const metricsGetCreditCards = getCreditCardsCounter.init({
|
||||
onlyNonExpired,
|
||||
})
|
||||
|
||||
@@ -12,7 +12,7 @@ export async function getPreviousStays(
|
||||
language: Lang,
|
||||
cursor?: string
|
||||
) {
|
||||
const getPreviousStaysCounter = createCounter("user", "getPreviousStays")
|
||||
const getPreviousStaysCounter = createCounter("user.getPreviousStays")
|
||||
const metricsGetPreviousStays = getPreviousStaysCounter.init({
|
||||
limit,
|
||||
cursor,
|
||||
|
||||
@@ -12,7 +12,7 @@ export async function getUpcomingStays(
|
||||
language: Lang,
|
||||
cursor?: string
|
||||
) {
|
||||
const getUpcomingStaysCounter = createCounter("user", "getUpcomingStays")
|
||||
const getUpcomingStaysCounter = createCounter("user.getUpcomingStays")
|
||||
const metricsGetUpcomingStays = getUpcomingStaysCounter.init({
|
||||
limit,
|
||||
cursor,
|
||||
|
||||
@@ -22,7 +22,7 @@ export async function getPreviousStays(
|
||||
language: Lang,
|
||||
cursor?: string
|
||||
) {
|
||||
const getPreviousStaysCounter = createCounter("user", "getPreviousStays")
|
||||
const getPreviousStaysCounter = createCounter("user.getPreviousStays")
|
||||
const metricsGetPreviousStays = getPreviousStaysCounter.init({
|
||||
limit,
|
||||
cursor,
|
||||
@@ -74,7 +74,7 @@ export async function getUpcomingStays(
|
||||
language: Lang,
|
||||
cursor?: string
|
||||
) {
|
||||
const getUpcomingStaysCounter = createCounter("user", "getUpcomingStays")
|
||||
const getUpcomingStaysCounter = createCounter("user.getUpcomingStays")
|
||||
const metricsGetUpcomingStays = getUpcomingStaysCounter.init({
|
||||
limit,
|
||||
cursor,
|
||||
@@ -128,7 +128,7 @@ export const getCreditCards = cache(
|
||||
session: Session
|
||||
onlyNonExpired?: boolean
|
||||
}) => {
|
||||
const getCreditCardsCounter = createCounter("user", "getCreditCards")
|
||||
const getCreditCardsCounter = createCounter("user.getCreditCards")
|
||||
const metricsGetCreditCards = getCreditCardsCounter.init({
|
||||
onlyNonExpired,
|
||||
})
|
||||
|
||||
@@ -11,7 +11,7 @@ export const getBasicUser = cache(
|
||||
}: {
|
||||
token: { expires_at?: number; access_token: string }
|
||||
}) => {
|
||||
const getBasicUserCounter = createCounter("user", "getBasicUser")
|
||||
const getBasicUserCounter = createCounter("user.getBasicUser")
|
||||
const metricsGetBasicUser = getBasicUserCounter.init()
|
||||
|
||||
metricsGetBasicUser.start()
|
||||
|
||||
@@ -17,7 +17,7 @@ export const getVerifiedUser = cache(
|
||||
token: { expires_at?: number; access_token: string }
|
||||
includeExtendedPartnerData?: boolean
|
||||
}) => {
|
||||
const getVerifiedUserCounter = createCounter("user", "getVerifiedUser")
|
||||
const getVerifiedUserCounter = createCounter("user.getVerifiedUser")
|
||||
const metricsGetVerifiedUser = getVerifiedUserCounter.init()
|
||||
|
||||
metricsGetVerifiedUser.start()
|
||||
|
||||
Reference in New Issue
Block a user