feat(stats): add user ids to inference metrics

This commit is contained in:
Adam
2026-06-23 07:05:26 -05:00
parent d568fed095
commit 428ae6d21a
6 changed files with 62 additions and 10 deletions
+2 -1
View File
@@ -75,6 +75,7 @@ WITH normalized AS (
session,
COALESCE(NULLIF(workspace, ''), '') AS workspace,
COALESCE(NULLIF(api_key, ''), '') AS api_key,
COALESCE(NULLIF(user_id, ''), '') AS user_id,
status,
duration AS duration_ms,
time_to_first_byte AS ttfb_ms,
@@ -116,7 +117,7 @@ WITH normalized AS (
country,
continent,
session,
COALESCE(NULLIF(workspace, ''), NULLIF(api_key, '')) AS user_key,
COALESCE(NULLIF(user_id, ''), NULLIF(workspace, ''), NULLIF(api_key, '')) AS user_key,
status,
duration_ms,
ttfb_ms,
@@ -454,7 +454,11 @@ function baseAggregate(row: RawRow, grain: Grain, opts: ImportOptions): StatBase
tier: tier(row),
sessions: integer(row, "sessions", ["COUNT_DISTINCT(session)"]),
requests: integer(row, "requests", ["COUNT", "COUNT()"]),
unique_users: integer(row, "unique_users", ["COUNT_DISTINCT(workspace)", "COUNT_DISTINCT(api_key)"]),
unique_users: integer(row, "unique_users", [
"COUNT_DISTINCT(user_id)",
"COUNT_DISTINCT(workspace)",
"COUNT_DISTINCT(api_key)",
]),
input_tokens: integer(row, "input_tokens", ["SUM(tokens.input)", "SUM(tokens_input)"]),
output_tokens: integer(row, "output_tokens", ["SUM(tokens.output)", "SUM(tokens_output)"]),
reasoning_tokens: integer(row, "reasoning_tokens", ["SUM(tokens.reasoning)", "SUM(tokens_reasoning)"]),