Commit Graph

41 Commits

Author SHA1 Message Date
Carl-Gerhard Lindesvärd
aa81bbfe77 feat: session replay
* wip

* wip

* wip

* wip

* final fixes

* comments

* fix
2026-02-26 14:09:53 +01:00
Carl-Gerhard Lindesvärd
e129a53ce5 fix: default to unknown user-agent 2026-02-09 12:04:55 +00:00
Carl-Gerhard Lindesvärd
db62919825 fix: salt issues 2026-01-26 12:07:06 +01:00
Carl-Gerhard Lindesvärd
d32a279949 fix: profileId 2026-01-20 14:08:44 +01:00
Carl-Gerhard Lindesvärd
3c085e445d fix: better validation of events + clean up (#267) 2026-01-07 11:58:11 +01:00
Carl-Gerhard Lindesvärd
d7c6e88adc fix: change order keys for clickhouse tables
* wip

* rename

* fix: minor things before merging new order keys

* fix: add maintenance mode

* fix: update order by for session and events

* fix: remove properties from sessions and final migration test

* fix: set end date on migrations

* fix: comments
2025-12-16 12:48:51 +01:00
Carl-Gerhard Lindesvärd
969c0bc8fe fix: ensure job id is a clean string 2025-12-08 20:32:29 +01:00
Carl-Gerhard Lindesvärd
790801b728 feat: revenue tracking
* wip

* wip

* wip

* wip

* show revenue better on overview

* align realtime and overview counters

* update revenue docs

* always return device id

* add project settings, improve projects charts,

* fix: comments

* fixes

* fix migration

* ignore sql files

* fix comments
2025-11-19 14:27:34 +01:00
Carl-Gerhard Lindesvärd
10726bf373 fix: better support for custom timestamps 2025-11-17 13:56:55 +01:00
Carl-Gerhard Lindesvärd
da59622dce fix: overall perf improvements
* fix: ignore private ips

* fix: performance related fixes

* fix: simply event buffer

* fix: default to 1 events queue shard

* add: cleanup scripts

* fix: comments

* fix comments

* fix

* fix: groupmq

* wip

* fix: sync cachable

* remove cluster names and add it behind env flag (if someone want to scale)

* fix

* wip

* better logger

* remove reqid and user agent

* fix lock

* remove wait_for_async_insert
2025-11-15 22:13:59 +01:00
Carl-Gerhard Lindesvärd
8fbe944df0 fix: use correct client ip header 2025-11-14 13:16:57 +01:00
Carl-Gerhard Lindesvärd
e7c21bc92c fix: remove old event queue, cleaned up session handling, remove hacks 2025-10-09 09:25:52 +02:00
Carl-Gerhard Lindesvärd
5b2f09f29c fix: always use currentDeviceId on client request to make sure they arrive in same group 2025-10-08 07:46:50 +02:00
Carl-Gerhard Lindesvärd
e4bc21fc2e fix: set random groupId if events from a server without a profile id 2025-10-07 09:57:12 +02:00
Carl-Gerhard Lindesvärd
0b4fcbad69 feat: use groupmq instead of bullmq for incoming events (#206)
* wip

* wip working group queue

* wip

* wip

* wip

* fix: groupmq package (tests failed)

* minor fixes

* fix: zero is fine for duration

* add logger

* fix: make buffers more lightweight

* bump groupmq

* new buffers and bump groupmq

* fix: buffers based on comments

* fix: use profileId as groupId if exists

* bump groupmq

* add concurrency env for only events
2025-10-04 21:07:55 +02:00
Carl-Gerhard Lindesvärd
34414e1d3e feat(geo): make geo a package instead of service (#161) 2025-06-06 05:56:54 +02:00
Carl-Gerhard Lindesvärd
0d58a5bf0c improve(queue): how we handle incoming events and session ends 2025-06-03 21:19:01 +02:00
Carl-Gerhard Lindesvärd
020ed5eb04 fix(api): send empty response 2025-02-28 11:17:48 +01:00
Carl-Gerhard Lindesvärd
5c6ad93ff5 improve(api): how we check duplicate requests 2025-02-28 10:03:28 +01:00
Carl-Gerhard Lindesvärd
7750ca117f improve(api): update api to fastify v5 2025-02-28 09:19:27 +01:00
Carl-Gerhard Lindesvärd
44721f84da fix(buffer): ensure we don't have duplicate events 2025-02-27 12:48:43 +01:00
Carl-Gerhard Lindesvärd
86bf9dd064 remove(api): profile alias are no gone since not used 2025-02-24 23:24:25 +01:00
Carl-Gerhard Lindesvärd
6ad47c8bd1 improve(api): ensure we do 3 attempts to add events to the queue 2025-02-19 10:34:52 +01:00
Carl-Gerhard Lindesvärd
59012526e2 fix(worker): add reqId to logger for better traceability 2025-02-19 10:33:42 +01:00
Carl-Gerhard Lindesvärd
4bf55fe840 improve(api): cache geo 2025-02-11 21:57:07 +01:00
Carl-Gerhard Lindesvärd
0cf73e299a chore(root): clean up unused stuff 2025-02-11 12:07:57 +01:00
Carl-Gerhard Lindesvärd
af0f9717a8 improve(worker): handle sessions with unknown state 2025-02-09 20:39:52 +01:00
Carl-Gerhard Lindesvärd
2688a428d9 chore(api): add option to not add new jobs 2025-02-08 22:13:16 +01:00
Carl-Gerhard Lindesvärd
7deee7e4c2 fix(api): handle common errors better 2025-01-28 07:14:35 +00:00
Carl-Gerhard Lindesvärd
60525f8905 feature(api): override user-agent information 2024-11-19 11:13:24 +01:00
Carl-Gerhard Lindesvärd
4fe338c628 feature(api,worker): Override default timestamp with a date from the past (#76)
* feature(worker,api): refactor incoming events and support custom timestamps from the past

* fix(queue): add retry logic to events queue

* fix(worker): remove properties when merging server events
2024-10-22 10:25:21 +02:00
Carl-Gerhard Lindesvärd
301d86aa71 fix(common): move ua parser to common and import isServer flag 2024-10-05 23:44:56 +02:00
Carl-Gerhard Lindesvärd
0c93944d8a fix(api): spread profile payload correctly 2024-09-25 20:57:54 +02:00
Carl-Gerhard Lindesvärd
25f329a4cd chore(buffer): iron out the buffer issues 2024-09-19 21:38:40 +02:00
Carl-Gerhard Lindesvärd
dfe00040de chore(buffer): final adjustments to buffer before deploy 2024-09-18 23:46:38 +02:00
Carl-Gerhard Lindesvärd
32e91959f6 chore(root): migrate to biome 2024-09-18 23:46:11 +02:00
Carl-Gerhard Lindesvärd
c34c2cb93b identify with track 2024-08-12 21:14:39 +02:00
Carl-Gerhard Lindesvärd
adc8b90450 just pick the headers we need 2024-08-09 23:00:38 +02:00
Carl-Gerhard Lindesvärd
ccfddc215f save sdk name and version 2024-08-09 23:00:38 +02:00
Carl-Gerhard Lindesvärd
41e46570b7 improvements while testing 2024-08-09 23:00:38 +02:00
Carl-Gerhard Lindesvärd
15e997129a initial for v1 2024-08-09 23:00:38 +02:00