Skip to content

nilalytics v0.2.0

Choose a tag to compare

@arghaffari arghaffari released this 04 Jul 12:54

Highlights

  • Curated user_events table (recommendations / ML). Identity and the common event fields are lifted out of JSON into typed columns, partitioned by day and sorted by person_id, so "one user's history" is a fast, file-pruned read. Refreshed incrementally via the DuckLake change feed (snapshot-id watermark → exactly-once, order-safe).
  • Per-user activity view. nilalytics query user <id> [days] returns one person's full activity and logs, optionally windowed (e.g. last 16 days), with a per-event-type breakdown.
  • Opt-in data retention. NILA_RETENTION_DAYS drops event rows older than the cutoff (across otlp_logs, otlp_traces, otlp_metrics_*, user_events) so storage stays bounded. Runs inside the single-writer server. Distinct from NILA_RETENTION_MS (snapshot/time-travel retention).
  • Retention dry-run. nilalytics maintenance --retention-dry-run [--days N] previews exactly what retention would delete, per table — read-only, deletes nothing.
  • Backend (server-side) activity guide. Documents backends as a first-class OTLP source and how to tie backend spans to the same user/action.

Docs

New User events and Backend activity guides; expanded configuration, querying, maintenance, and architecture pages.

Full changelog: v0.1.0...v0.2.0