mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-13 21:01:21 +08:00
fix metrics queries (#880)
<!-- Make sure you've read the CONTRIBUTING.md guidelines: https://github.com/stack-auth/stack-auth/blob/dev/CONTRIBUTING.md --> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Fixes handling of `isAnonymous` field in metrics queries by using `COALESCE` to default null values to 'false' in `route.tsx`. > > - **Behavior**: > - Fixes handling of `isAnonymous` field in metrics queries by using `COALESCE` to default null values to 'false'. > - Affects `loadUsersByCountry`, `loadDailyActiveUsers`, and `loadRecentlyActiveUsers` functions in `route.tsx`. > - **Functions**: > - `loadUsersByCountry`: Updates query condition to use `COALESCE` for `isAnonymous`. > - `loadDailyActiveUsers`: Updates query condition to use `COALESCE` for `isAnonymous`. > - `loadRecentlyActiveUsers`: Updates query condition to use `COALESCE` for `isAnonymous`. > > <sup>This description was created by </sup>[<img alt="Ellipsis" src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=stack-auth%2Fstack-auth&utm_source=github&utm_medium=referral)<sup> forb3ad219430. You can [customize](https://app.ellipsis.dev/stack-auth/settings/summaries) this summary. It will automatically update as commits are pushed.</sup> <!-- ELLIPSIS_HIDDEN --> <!-- RECURSEML_SUMMARY:START --> ## Review by RecurseML _🔍 Review performed on [9318e2b..b3ad219](9318e2b6ce...b3ad219430)_ ✨ No bugs found, your code is sparkling clean <details> <summary>✅ Files analyzed, no issues (1)</summary> • `apps/backend/src/app/api/latest/internal/metrics/route.tsx` </details> [](https://discord.gg/n3SsVDAW6U) <!-- RECURSEML_SUMMARY:END --> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Bug Fixes** * Corrected handling of anonymous users in analytics: records missing an isAnonymous flag are now treated as non-anonymous when anonymous users are excluded. * Impacts country breakdown, daily active users, and recently active metrics; overall total users unchanged. * Expect slightly higher non-anonymous counts and more consistent reporting across these metrics. <!-- end of auto-generated comment: release notes by coderabbit.ai --> Co-authored-by: Konsti Wohlwend <n2d4xc@gmail.com>
This commit is contained in:
parent
4409996381
commit
3b6f9ee4fe
@ -27,7 +27,7 @@ async function loadUsersByCountry(tenancy: Tenancy, includeAnonymous: boolean =
|
||||
ON "Event"."endUserIpInfoGuessId" = eip.id
|
||||
WHERE '$user-activity' = ANY("systemEventTypeIds"::text[])
|
||||
AND "data"->>'projectId' = ${tenancy.project.id}
|
||||
AND (${includeAnonymous} OR NOT "data"->>'isAnonymous' = 'true')
|
||||
AND (${includeAnonymous} OR COALESCE("data"->>'isAnonymous', 'false') != 'true')
|
||||
AND COALESCE("data"->>'branchId', 'main') = ${tenancy.branchId}
|
||||
AND "countryCode" IS NOT NULL
|
||||
ORDER BY "userId", "eventStartedAt" DESC
|
||||
@ -87,7 +87,7 @@ async function loadDailyActiveUsers(tenancy: Tenancy, now: Date, includeAnonymou
|
||||
daily_users AS (
|
||||
SELECT
|
||||
DATE_TRUNC('day', "eventStartedAt") AS "day",
|
||||
COUNT(DISTINCT CASE WHEN (${includeAnonymous} OR "data"->>'isAnonymous' = 'false') THEN "data"->'userId' ELSE NULL END) AS "dau"
|
||||
COUNT(DISTINCT CASE WHEN (${includeAnonymous} OR COALESCE("data"->>'isAnonymous', 'false') != 'true') THEN "data"->'userId' ELSE NULL END) AS "dau"
|
||||
FROM "Event"
|
||||
WHERE "eventStartedAt" >= ${now}::date - INTERVAL '30 days'
|
||||
AND '$user-activity' = ANY("systemEventTypeIds"::text[])
|
||||
@ -146,7 +146,7 @@ async function loadRecentlyActiveUsers(tenancy: Tenancy, includeAnonymous: boole
|
||||
) as rn
|
||||
FROM "Event"
|
||||
WHERE "data"->>'projectId' = ${tenancy.project.id}
|
||||
AND (${includeAnonymous} OR NOT "data"->>'isAnonymous' = 'true')
|
||||
AND (${includeAnonymous} OR COALESCE("data"->>'isAnonymous', 'false') != 'true')
|
||||
AND COALESCE("data"->>'branchId', 'main') = ${tenancy.branchId}
|
||||
AND '$user-activity' = ANY("systemEventTypeIds"::text[])
|
||||
)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user