Skip to content

Commit e5812c2

Browse files
committed
top browsers
1 parent 058e233 commit e5812c2

File tree

2 files changed

+110
-0
lines changed

2 files changed

+110
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
NODE extract_browser
2+
SQL >
3+
4+
%
5+
SELECT
6+
case
7+
when match(event.data.user_agent::String, '(?i)firefox')
8+
then 'Firefox'
9+
when match(event.data.user_agent::String, '(?i)chrome|crios')
10+
then 'Chrome'
11+
when match(event.data.user_agent::String, '(?i)opera')
12+
then 'Opera'
13+
when match(event.data.user_agent::String, '(?i)msie|trident')
14+
then 'Internet Explorer'
15+
when match(event.data.user_agent::String, '(?i)iphone|ipad|safari')
16+
then 'Safari'
17+
else 'Unknown'
18+
END as browser,
19+
count(*) as request_count
20+
FROM auth0
21+
WHERE 1
22+
AND event_time >= {{DateTime(date_from, '2024-01-01 00:00:00')}}
23+
AND event_time <= {{DateTime(date_to, '2026-01-01 23:59:59')}}
24+
AND event.data.user_agent IS NOT NULL
25+
{% if defined(event_type) %}
26+
AND event_type = {{String(event_type)}}
27+
{% end %}
28+
{% if defined(client_name) %}
29+
AND event.data.client_name::String = {{String(client_name)}}
30+
{% end %}
31+
{% if defined(connection_id) %}
32+
AND event.data.connection_id::String = {{String(connection_id)}}
33+
{% end %}
34+
{% if defined(tenant_name) %}
35+
AND event.data.tenant_name::String = {{String(tenant_name)}}
36+
{% end %}
37+
AND browser != 'Unknown'
38+
GROUP BY browser
39+
ORDER BY request_count DESC
40+
LIMIT 10
41+
42+
TYPE endpoint
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
2+
- name: all_time_top_browsers
3+
description: Get top browsers for all time with no filters
4+
parameters: ''
5+
expected_result: |
6+
{"browser":"Chrome","request_count":7844}
7+
{"browser":"Firefox","request_count":623}
8+
{"browser":"Safari","request_count":584}
9+
{"browser":"Opera","request_count":3}
10+
{"browser":"Internet Explorer","request_count":3}
11+
12+
- name: filtered_by_client_and_event
13+
description: Get top browsers filtered by client name and event type
14+
parameters: date_from=2024-01-01%2000:00:00&date_to=2026-01-01%2023:59:59&client_name=Tinybird%20UI%20login&event_type=s
15+
expected_result: |
16+
{"browser":"Chrome","request_count":5195}
17+
{"browser":"Firefox","request_count":382}
18+
{"browser":"Safari","request_count":280}
19+
20+
- name: specific_tenant_connection
21+
description: Get top browsers for a specific tenant and connection ID
22+
parameters: date_from=2024-01-01%2000:00:00&date_to=2025-12-31%2023:59:59&tenant_name=tinybird-prod&connection_id=con_44Dbx1tiicQTA5zj
23+
expected_result: |
24+
{"browser":"Chrome","request_count":13}
25+
{"browser":"Firefox","request_count":1}
26+
27+
- name: custom_date_range
28+
description: Get top browsers for a specific date range
29+
parameters: date_from=2025-01-01%2000:00:00&date_to=2025-01-01%2023:59:59
30+
expected_result: |
31+
{"browser":"Chrome","request_count":155}
32+
{"browser":"Safari","request_count":15}
33+
{"browser":"Firefox","request_count":9}
34+
{"browser":"Opera","request_count":1}
35+
{"browser":"Internet Explorer","request_count":1}
36+
37+
- name: default_date_range
38+
description: Test with default date range and no filters
39+
parameters: tb pipe data auth0_top_browsers
40+
expected_result: |
41+
{"browser":"Chrome","request_count":7844}
42+
{"browser":"Firefox","request_count":623}
43+
{"browser":"Safari","request_count":584}
44+
{"browser":"Opera","request_count":3}
45+
{"browser":"Internet Explorer","request_count":3}
46+
47+
- name: filtered_by_client_name
48+
description: Test filtering by specific client name
49+
parameters: client_name=Tinybird%20UI%20login
50+
expected_result: |
51+
{"browser":"Chrome","request_count":6302}
52+
{"browser":"Firefox","request_count":471}
53+
{"browser":"Safari","request_count":340}
54+
55+
- name: filtered_by_date_range
56+
description: Test with custom date range
57+
parameters: date_from=2025-01-02%2000:00:00&date_to=2025-01-02%2023:59:59
58+
expected_result: |
59+
{"browser":"Chrome","request_count":513}
60+
{"browser":"Firefox","request_count":46}
61+
{"browser":"Safari","request_count":22}
62+
63+
- name: connection_specific
64+
description: Test filtering by connection ID
65+
parameters: connection_id=con_44Dbx1tiicQTA5zj&client_name=Tinybird%20UI%20login
66+
expected_result: |
67+
{"browser":"Chrome","request_count":12}
68+
{"browser":"Firefox","request_count":1}

0 commit comments

Comments
 (0)