Merge branch 'umami-software:master' into master

This commit is contained in:
Viet-Tien 2024-08-28 12:44:04 +07:00 committed by GitHub
commit 712d3026de
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 308 additions and 324 deletions

View file

@ -41,8 +41,8 @@ async function clickhouseQuery(
websiteId: string,
filters: QueryFilters,
): Promise<{ x: string; y: number }[]> {
const { unit = 'day' } = filters;
const { parseFilters, rawQuery } = clickhouse;
const { timezone = 'utc', unit = 'day' } = filters;
const { parseFilters, rawQuery, getDateSQL } = clickhouse;
const { filterQuery, params } = await parseFilters(websiteId, {
...filters,
eventType: EVENT_TYPE.pageView,
@ -57,7 +57,7 @@ async function clickhouseQuery(
g.y as y
from (
select
date_trunc('${unit}', created_at) as t,
${getDateSQL('website_event.created_at', unit, timezone)} as t,
count(*) as y
from website_event
where website_id = {websiteId:UUID}
@ -75,7 +75,7 @@ async function clickhouseQuery(
g.y as y
from (
select
date_trunc('${unit}', created_at) as t,
${getDateSQL('website_event.created_at', unit, timezone)} as t,
sum(views)as y
from website_event_stats_hourly website_event
where website_id = {websiteId:UUID}

View file

@ -110,7 +110,7 @@ async function clickhouseQuery(
}[]
> {
const { startDate, endDate, timezone = 'UTC' } = filters;
const { getDateSQL, getDateStringSQL, rawQuery } = clickhouse;
const { getDateSQL, rawQuery } = clickhouse;
const unit = 'day';
return rawQuery(
@ -152,7 +152,7 @@ async function clickhouseQuery(
group by 1, 2
)
select
${getDateStringSQL('c.cohort_date', unit)} as date,
c.cohort_date as date,
c.day_number as day,
s.visitors as visitors,
c.visitors returnVisitors,

View file

@ -41,8 +41,8 @@ async function clickhouseQuery(
websiteId: string,
filters: QueryFilters,
): Promise<{ x: string; y: number }[]> {
const { unit = 'day' } = filters;
const { parseFilters, rawQuery } = clickhouse;
const { timezone = 'utc', unit = 'day' } = filters;
const { parseFilters, rawQuery, getDateSQL } = clickhouse;
const { filterQuery, params } = await parseFilters(websiteId, {
...filters,
eventType: EVENT_TYPE.pageView,
@ -53,11 +53,11 @@ async function clickhouseQuery(
if (EVENT_COLUMNS.some(item => Object.keys(filters).includes(item)) || unit === 'minute') {
sql = `
select
g.t as x,
g.t as x,
g.y as y
from (
select
date_trunc('${unit}', created_at) as t,
${getDateSQL('website_event.created_at', unit, timezone)} as t,
count(distinct session_id) as y
from website_event
where website_id = {websiteId:UUID}
@ -71,11 +71,11 @@ async function clickhouseQuery(
} else {
sql = `
select
g.t as x,
g.t as x,
g.y as y
from (
select
date_trunc('${unit}', created_at) as t,
${getDateSQL('website_event.created_at', unit, timezone)} as t,
uniq(session_id) as y
from website_event_stats_hourly website_event
where website_id = {websiteId:UUID}