Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(backend): support user defined attributes #1529

Merged
merged 14 commits into from
Dec 3, 2024
Merged

feat(backend): support user defined attributes #1529

merged 14 commits into from
Dec 3, 2024

Conversation

detj
Copy link
Contributor

@detj detj commented Nov 20, 2024

Summary

Add ability to ingest, fetch and query user defined attributes for events.

Tasks

  • Add new columns for storing user defined attributes in each event
  • Add new table to store materialized user defined attributes
  • Add new materialized view to materialize user defined attributes table
  • Create a dictionary to lazy load and store user defined attributes
  • Update PUT /events API to read, validate, process and store user defined attributes
  • Build a common comparison expression system that will apply to all APIs filtering using user defined attributes
  • Write a custom test ingestion script to generate test user defined attributes for certain event types
  • Update GET /apps/:id/filters API to return list of unique user defined attribute keys and their types
  • Write automated tests for parsing, validating and augmenting SQL statements with user defined attribute expressions
  • Update GET /apps/:id/crashGroups API to return user defined attributes
  • Update GET /apps/:id/anrGroups API to return user defined attributes
  • Handle type casting for non-string type queries
  • Escape conflicting characters like % for string queries
  • Update GET /apps/:id/crashGroups/:crashGroupId/crashes to support filtering via user defined attributes
  • Update GET /apps/:id/crashGroups/:id/plots/instances to support filtering via user defined attributes
  • Update GET /apps/:id/crashGroups/:id/plots/distribution to support filtering via user defined attributes
  • Update GET /apps/:id/anrGroups/:anrGroupId/anrs to support filtering via user defined attributes
  • Update GET /apps/:id/anrGroups/:id/plots/instances to support filtering via user defined attributes
  • Update GET /apps/:id/anrGroups/:id/plots/distribution to support filtering via user defined attributes
  • Update POST /apps/:id/shortFilters API to accept and store user defined attributes
  • Update GET /apps/:id/sessions API to return user defined attributes
  • Update GET /apps/:id/sessions/:sessionId API to return user defined attributes
  • Test, cleanup and refactor
  • 📚 Update SDK API docs
  • 📚 Update dashboard API docs

See also

Copy link

vercel bot commented Nov 20, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
measure-dashboard ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 3, 2024 10:25am

@detj detj self-assigned this Nov 20, 2024
@detj detj added feature new features backend backend related labels Nov 20, 2024
@detj detj mentioned this pull request Nov 20, 2024
14 tasks
- add user defined attributes filtering for GET `/apps/:id/crashGroups`
API
- add user defined attributes filtering for GET `/apps/:id/anrGroups`
API

Signed-off-by: detj <[email protected]>
- handle percent escape for string types for use in ilike queries
- handle type casting for non-string types

Signed-off-by: detj <[email protected]>
@detj detj merged commit b61d385 into main Dec 3, 2024
8 checks passed
@detj detj deleted the custom-attributes branch December 3, 2024 10:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend backend related feature new features
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Support user defined attributes
2 participants