diff --git a/src/lib/clickhouse.ts b/src/lib/clickhouse.ts index bc99f8f2..5e6e7133 100644 --- a/src/lib/clickhouse.ts +++ b/src/lib/clickhouse.ts @@ -181,6 +181,7 @@ async function pagedRawQuery( query: string, queryParams: Record, filters: QueryFilters, + name?: string, ) { const { page = 1, pageSize, orderBy, sortDescending = false, search } = filters; const size = +pageSize || DEFAULT_PAGE_SIZE; @@ -198,7 +199,7 @@ async function pagedRawQuery( res => res[0].num, ); - const data = await rawQuery(`${query}${statements}`, queryParams); + const data = await rawQuery(`${query}${statements}`, queryParams, name); return { data, count, page: +page, pageSize: size, orderBy, search }; } diff --git a/src/lib/prisma.ts b/src/lib/prisma.ts index c3092512..346f118e 100644 --- a/src/lib/prisma.ts +++ b/src/lib/prisma.ts @@ -219,6 +219,7 @@ async function pagedRawQuery( query: string, filters: QueryFilters, queryParams: Record, + name?: string, ) { const { page = 1, pageSize, orderBy, sortDescending = false } = filters; const size = +pageSize || DEFAULT_PAGE_SIZE; @@ -236,7 +237,7 @@ async function pagedRawQuery( res => res[0].num, ); - const data = await rawQuery(`${query}${statements}`, queryParams); + const data = await rawQuery(`${query}${statements}`, queryParams, name); return { data, count, page: +page, pageSize: size, orderBy }; } diff --git a/src/queries/sql/events/getEventData.ts b/src/queries/sql/events/getEventData.ts index 1167f014..f8ba2eef 100644 --- a/src/queries/sql/events/getEventData.ts +++ b/src/queries/sql/events/getEventData.ts @@ -3,6 +3,8 @@ import prisma from '@/lib/prisma'; import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; +const FUNCTION_NAME = 'getEventData'; + export async function getEventData(...args: [eventId: string]): Promise { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -30,6 +32,7 @@ async function relationalQuery(eventId: string) { where event_id = {{eventId::uuid}} `, { eventId }, + FUNCTION_NAME, ); } @@ -53,5 +56,6 @@ async function clickhouseQuery(eventId: string): Promise { where event_id = {eventId:UUID} `, { eventId }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataEvents.ts b/src/queries/sql/events/getEventDataEvents.ts index ac9f26d6..f7bea46c 100644 --- a/src/queries/sql/events/getEventDataEvents.ts +++ b/src/queries/sql/events/getEventDataEvents.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataEvents'; + export interface WebsiteEventData { eventName?: string; propertyName: string; @@ -44,6 +46,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { order by 1 asc, 2 asc, 3 asc, 5 desc `, queryParams, + FUNCTION_NAME, ); } @@ -59,11 +62,10 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { on website_event.event_id = event_data.website_event_id where event_data.website_id = {{websiteId::uuid}} and event_data.created_at between {{startDate}} and {{endDate}} - group by website_event.event_name, event_data.data_key, event_data.data_type - order by 1 asc, 2 asc limit 500 `, queryParams, + FUNCTION_NAME, ); } @@ -93,6 +95,7 @@ async function clickhouseQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } @@ -111,5 +114,6 @@ async function clickhouseQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataFields.ts b/src/queries/sql/events/getEventDataFields.ts index 1b76f0a0..d62af2d4 100644 --- a/src/queries/sql/events/getEventDataFields.ts +++ b/src/queries/sql/events/getEventDataFields.ts @@ -3,6 +3,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataFields'; + export async function getEventDataFields(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -42,6 +44,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { limit 100 `, queryParams, + FUNCTION_NAME, ); } @@ -71,5 +74,6 @@ async function clickhouseQuery( limit 100 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataProperties.ts b/src/queries/sql/events/getEventDataProperties.ts index 7eccf594..60b46bcc 100644 --- a/src/queries/sql/events/getEventDataProperties.ts +++ b/src/queries/sql/events/getEventDataProperties.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataProperties'; + export async function getEventDataProperties( ...args: [websiteId: string, filters: QueryFilters & { propertyName?: string }] ) { @@ -44,6 +46,7 @@ async function relationalQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } @@ -75,5 +78,6 @@ async function clickhouseQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataStats.ts b/src/queries/sql/events/getEventDataStats.ts index ea42be7c..606a49ea 100644 --- a/src/queries/sql/events/getEventDataStats.ts +++ b/src/queries/sql/events/getEventDataStats.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataStats'; + export async function getEventDataStats( ...args: [websiteId: string, filters: QueryFilters] ): Promise<{ @@ -47,6 +49,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { ) as t `, queryParams, + FUNCTION_NAME, ); } @@ -77,5 +80,6 @@ async function clickhouseQuery( ) as t `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataUsage.ts b/src/queries/sql/events/getEventDataUsage.ts index 7417a17e..c72f5b3e 100644 --- a/src/queries/sql/events/getEventDataUsage.ts +++ b/src/queries/sql/events/getEventDataUsage.ts @@ -2,6 +2,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery, notImplemented } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataUsage'; + export function getEventDataUsage(...args: [websiteIds: string[], filters: QueryFilters]) { return runQuery({ [PRISMA]: notImplemented, @@ -31,5 +33,6 @@ function clickhouseQuery( startDate, endDate, }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventDataValues.ts b/src/queries/sql/events/getEventDataValues.ts index a8f4b4a1..bdfe7482 100644 --- a/src/queries/sql/events/getEventDataValues.ts +++ b/src/queries/sql/events/getEventDataValues.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventDataValues'; + interface WebsiteEventData { value: string; total: number; @@ -55,6 +57,7 @@ async function relationalQuery( limit 100 `, queryParams, + FUNCTION_NAME, ); } @@ -84,5 +87,6 @@ async function clickhouseQuery( limit 100 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventExpandedMetrics.ts b/src/queries/sql/events/getEventExpandedMetrics.ts index 96a452fa..bf4c2ceb 100644 --- a/src/queries/sql/events/getEventExpandedMetrics.ts +++ b/src/queries/sql/events/getEventExpandedMetrics.ts @@ -4,6 +4,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventExpandedMetrics'; + export interface EventExpandedMetricParameters { type: string; limit?: string; @@ -61,6 +63,7 @@ async function relationalQuery( offset ${offset} `, queryParams, + FUNCTION_NAME, ); } @@ -108,5 +111,6 @@ async function clickhouseQuery( offset ${offset} `, { ...queryParams, ...parameters }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getEventStats.ts b/src/queries/sql/events/getEventStats.ts index 54afaaf5..baa6f700 100644 --- a/src/queries/sql/events/getEventStats.ts +++ b/src/queries/sql/events/getEventStats.ts @@ -4,6 +4,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventStats'; + interface WebsiteEventMetric { x: string; t: string; @@ -44,6 +46,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { order by 2 `, queryParams, + FUNCTION_NAME, ); } @@ -94,5 +97,5 @@ async function clickhouseQuery( `; } - return rawQuery(sql, queryParams); + return rawQuery(sql, queryParams, FUNCTION_NAME); } diff --git a/src/queries/sql/events/getEventUsage.ts b/src/queries/sql/events/getEventUsage.ts index 45f1a4a8..0bd0a5f3 100644 --- a/src/queries/sql/events/getEventUsage.ts +++ b/src/queries/sql/events/getEventUsage.ts @@ -2,6 +2,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery, notImplemented } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getEventUsage'; + export function getEventUsage(...args: [websiteIds: string[], filters: QueryFilters]) { return runQuery({ [PRISMA]: notImplemented, @@ -31,5 +33,6 @@ function clickhouseQuery( startDate, endDate, }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/events/getWebsiteEvents.ts b/src/queries/sql/events/getWebsiteEvents.ts index b81ca970..371c45f6 100644 --- a/src/queries/sql/events/getWebsiteEvents.ts +++ b/src/queries/sql/events/getWebsiteEvents.ts @@ -3,6 +3,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getWebsiteEvents'; + export function getWebsiteEvents(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -56,6 +58,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { `, queryParams, filters, + FUNCTION_NAME, ); } @@ -104,5 +107,6 @@ async function clickhouseQuery(websiteId: string, filters: QueryFilters) { `, queryParams, filters, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/getWebsiteStats.ts b/src/queries/sql/getWebsiteStats.ts index 79fb8bbe..f7e63740 100644 --- a/src/queries/sql/getWebsiteStats.ts +++ b/src/queries/sql/getWebsiteStats.ts @@ -5,6 +5,8 @@ import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; import { EVENT_COLUMNS } from '@/lib/constants'; +const FUNCTION_NAME = 'getWebsiteStats'; + export interface WebsiteStatsData { pageviews: number; visitors: number; @@ -58,6 +60,7 @@ async function relationalQuery( ) as t `, queryParams, + FUNCTION_NAME, ).then(result => result?.[0]); } @@ -121,5 +124,5 @@ async function clickhouseQuery( `; } - return rawQuery(sql, queryParams).then(result => result?.[0]); + return rawQuery(sql, queryParams, FUNCTION_NAME).then(result => result?.[0]); } diff --git a/src/queries/sql/getWeeklyTraffic.ts b/src/queries/sql/getWeeklyTraffic.ts index 217f6fa7..2ea37067 100644 --- a/src/queries/sql/getWeeklyTraffic.ts +++ b/src/queries/sql/getWeeklyTraffic.ts @@ -4,6 +4,8 @@ import { runQuery, PRISMA, CLICKHOUSE } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; import { EVENT_COLUMNS } from '@/lib/constants'; +const FUNCTION_NAME = 'getWeeklyTraffic'; + export async function getWeeklyTraffic(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -34,6 +36,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { order by 2 `, queryParams, + FUNCTION_NAME, ).then(formatResults); } @@ -72,7 +75,7 @@ async function clickhouseQuery(websiteId: string, filters: QueryFilters) { `; } - return rawQuery(sql, queryParams).then(formatResults); + return rawQuery(sql, queryParams, FUNCTION_NAME).then(formatResults); } function formatResults(data: any) { diff --git a/src/queries/sql/pageviews/getPageviewStats.ts b/src/queries/sql/pageviews/getPageviewStats.ts index a8ee4734..3741609b 100644 --- a/src/queries/sql/pageviews/getPageviewStats.ts +++ b/src/queries/sql/pageviews/getPageviewStats.ts @@ -4,6 +4,8 @@ import prisma from '@/lib/prisma'; import { EVENT_COLUMNS, EVENT_TYPE } from '@/lib/constants'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getPageviewStats'; + export async function getPageviewStats(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -35,6 +37,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { order by 1 `, queryParams, + FUNCTION_NAME, ); } @@ -90,5 +93,5 @@ async function clickhouseQuery( `; } - return rawQuery(sql, queryParams); + return rawQuery(sql, queryParams, FUNCTION_NAME); } diff --git a/src/queries/sql/sessions/getSessionActivity.ts b/src/queries/sql/sessions/getSessionActivity.ts index ca0f18ee..06b8a137 100644 --- a/src/queries/sql/sessions/getSessionActivity.ts +++ b/src/queries/sql/sessions/getSessionActivity.ts @@ -3,6 +3,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getSessionActivity'; + export async function getSessionActivity( ...args: [websiteId: string, sessionId: string, filters: QueryFilters] ) { @@ -13,17 +15,31 @@ export async function getSessionActivity( } async function relationalQuery(websiteId: string, sessionId: string, filters: QueryFilters) { + const { rawQuery } = prisma; const { startDate, endDate } = filters; - return prisma.client.websiteEvent.findMany({ - where: { - sessionId, - websiteId, - createdAt: { gte: startDate, lte: endDate }, - }, - take: 500, - orderBy: { createdAt: 'desc' }, - }); + return rawQuery( + ` + select + created_at as createdAt, + url_path as urlPath, + url_query as urlQuery, + referrer_domain as referrerDomain, + event_id as eventId, + event_type as eventType, + event_name as eventName, + visit_id as visitId, + event_id IN (SELECT event_id FROM event_data) AS hasData + from website_event e + where e.website_id = {websiteId:UUID} + and e.session_id = {sessionId:UUID} + and e.created_at between {startDate:DateTime64} and {endDate:DateTime64} + order by e.created_at desc + limit 500 + `, + { websiteId, sessionId, startDate, endDate }, + FUNCTION_NAME, + ); } async function clickhouseQuery(websiteId: string, sessionId: string, filters: QueryFilters) { @@ -50,5 +66,6 @@ async function clickhouseQuery(websiteId: string, sessionId: string, filters: Qu limit 500 `, { websiteId, sessionId, startDate, endDate }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/sessions/getSessionData.ts b/src/queries/sql/sessions/getSessionData.ts index a3f1e113..09679fc8 100644 --- a/src/queries/sql/sessions/getSessionData.ts +++ b/src/queries/sql/sessions/getSessionData.ts @@ -2,6 +2,8 @@ import prisma from '@/lib/prisma'; import clickhouse from '@/lib/clickhouse'; import { runQuery, PRISMA, CLICKHOUSE } from '@/lib/db'; +const FUNCTION_NAME = 'getSessionData'; + export async function getSessionData(...args: [websiteId: string, sessionId: string]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -29,6 +31,7 @@ async function relationalQuery(websiteId: string, sessionId: string) { order by data_key asc `, { websiteId, sessionId }, + FUNCTION_NAME, ); } @@ -52,5 +55,6 @@ async function clickhouseQuery(websiteId: string, sessionId: string) { order by data_key asc `, { websiteId, sessionId }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/sessions/getSessionDataProperties.ts b/src/queries/sql/sessions/getSessionDataProperties.ts index d72a0480..134cf720 100644 --- a/src/queries/sql/sessions/getSessionDataProperties.ts +++ b/src/queries/sql/sessions/getSessionDataProperties.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getSessionDataProperties'; + export async function getSessionDataProperties( ...args: [websiteId: string, filters: QueryFilters & { propertyName?: string }] ) { @@ -42,6 +44,7 @@ async function relationalQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } @@ -75,5 +78,6 @@ async function clickhouseQuery( limit 500 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/sessions/getSessionDataValues.ts b/src/queries/sql/sessions/getSessionDataValues.ts index 9ff3cb45..8da12669 100644 --- a/src/queries/sql/sessions/getSessionDataValues.ts +++ b/src/queries/sql/sessions/getSessionDataValues.ts @@ -3,6 +3,8 @@ import clickhouse from '@/lib/clickhouse'; import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getSessionDataValues'; + export async function getSessionDataValues( ...args: [websiteId: string, filters: QueryFilters & { propertyName?: string }] ) { @@ -45,6 +47,7 @@ async function relationalQuery( limit 100 `, queryParams, + FUNCTION_NAME, ); } @@ -75,5 +78,6 @@ async function clickhouseQuery( limit 100 `, queryParams, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/sessions/getSessionExpandedMetrics.ts b/src/queries/sql/sessions/getSessionExpandedMetrics.ts index 56dba66e..33dae75b 100644 --- a/src/queries/sql/sessions/getSessionExpandedMetrics.ts +++ b/src/queries/sql/sessions/getSessionExpandedMetrics.ts @@ -4,6 +4,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getSessionExpandedMetrics'; + export interface SessionExpandedMetricsParameters { type: string; limit?: number | string; @@ -71,6 +73,7 @@ async function relationalQuery( offset ${offset} `, { ...queryParams, ...parameters }, + FUNCTION_NAME, ); } @@ -128,5 +131,6 @@ async function clickhouseQuery( offset ${offset} `, { ...queryParams, ...parameters }, + FUNCTION_NAME, ); } diff --git a/src/queries/sql/sessions/getSessionStats.ts b/src/queries/sql/sessions/getSessionStats.ts index 62ef4480..88e0b7b8 100644 --- a/src/queries/sql/sessions/getSessionStats.ts +++ b/src/queries/sql/sessions/getSessionStats.ts @@ -4,6 +4,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getSessionStats'; + export async function getSessionStats(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -35,6 +37,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { order by 1 `, queryParams, + FUNCTION_NAME, ); } @@ -90,5 +93,5 @@ async function clickhouseQuery( `; } - return rawQuery(sql, queryParams); + return rawQuery(sql, queryParams, FUNCTION_NAME); } diff --git a/src/queries/sql/sessions/getWebsiteSession.ts b/src/queries/sql/sessions/getWebsiteSession.ts index 8c549ca3..36c48c20 100644 --- a/src/queries/sql/sessions/getWebsiteSession.ts +++ b/src/queries/sql/sessions/getWebsiteSession.ts @@ -2,6 +2,8 @@ import prisma from '@/lib/prisma'; import clickhouse from '@/lib/clickhouse'; import { runQuery, PRISMA, CLICKHOUSE } from '@/lib/db'; +const FUNCTION_NAME = 'getWebsiteSession'; + export async function getWebsiteSession(...args: [websiteId: string, sessionId: string]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -56,6 +58,7 @@ async function relationalQuery(websiteId: string, sessionId: string) { group by id, distinct_id, website_id, browser, os, device, screen, language, country, region, city; `, { websiteId, sessionId }, + FUNCTION_NAME, ).then(result => result?.[0]); } @@ -105,5 +108,6 @@ async function clickhouseQuery(websiteId: string, sessionId: string) { group by id, websiteId, distinctId, browser, os, device, screen, language, country, region, city; `, { websiteId, sessionId }, + FUNCTION_NAME, ).then(result => result?.[0]); } diff --git a/src/queries/sql/sessions/getWebsiteSessionStats.ts b/src/queries/sql/sessions/getWebsiteSessionStats.ts index 804a483b..be90d4cd 100644 --- a/src/queries/sql/sessions/getWebsiteSessionStats.ts +++ b/src/queries/sql/sessions/getWebsiteSessionStats.ts @@ -4,6 +4,8 @@ import { CLICKHOUSE, PRISMA, runQuery } from '@/lib/db'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getWebsiteSessionStats'; + export interface WebsiteSessionStatsData { pageviews: number; visitors: number; @@ -47,6 +49,7 @@ async function relationalQuery( ${filterQuery} `, queryParams, + FUNCTION_NAME, ); } @@ -89,5 +92,5 @@ async function clickhouseQuery( `; } - return rawQuery(sql, queryParams); + return rawQuery(sql, queryParams, FUNCTION_NAME); } diff --git a/src/queries/sql/sessions/getWebsiteSessions.ts b/src/queries/sql/sessions/getWebsiteSessions.ts index 2e93a966..44b52d8e 100644 --- a/src/queries/sql/sessions/getWebsiteSessions.ts +++ b/src/queries/sql/sessions/getWebsiteSessions.ts @@ -4,6 +4,8 @@ import { EVENT_COLUMNS } from '@/lib/constants'; import prisma from '@/lib/prisma'; import { QueryFilters } from '@/lib/types'; +const FUNCTION_NAME = 'getWebsiteSessions'; + export async function getWebsiteSessions(...args: [websiteId: string, filters: QueryFilters]) { return runQuery({ [PRISMA]: () => relationalQuery(...args), @@ -69,6 +71,7 @@ async function relationalQuery(websiteId: string, filters: QueryFilters) { `, queryParams, filters, + FUNCTION_NAME, ); } @@ -147,5 +150,5 @@ async function clickhouseQuery(websiteId: string, filters: QueryFilters) { `; } - return pagedRawQuery(sql, queryParams, filters); + return pagedRawQuery(sql, queryParams, filters, FUNCTION_NAME); }