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

[Milestone] Metrics Meta Data #60260

Closed
17 of 24 tasks
jan-auer opened this issue Nov 20, 2023 · 0 comments
Closed
17 of 24 tasks

[Milestone] Metrics Meta Data #60260

jan-auer opened this issue Nov 20, 2023 · 0 comments
Assignees

Comments

@jan-auer
Copy link
Member

jan-auer commented Nov 20, 2023

DDM wants to show code locations with metrics. This is semi-static information, in that it changes infrequently between deploys, but doesn't need to be reported with every data point. The code locations should be shown in the DDM explorer.

Feature Set:

  • Code Location
  • (TBD) Cached span flag
  • Descriptions

PoC

Goals:

  1. Estimate cost scaling
  2. SDK protocol + impl in Py
  3. Transient storage
  4. Expose in products

Constraints:

  • Multiple locations per metric possible
  • Concept of time (esp for endpoint)
  • No explicit release-support, no location per tag
  • No symbolication yet, but consider it for future
  • No data scrubbing yet, but consider it for future
  • Debouncing doesn't have to be persistent (ie. not survive restarts)

Design Doc

Stage 1: PoC

  1. jan-auer
  2. Dav1dde
  3. Scope: Backend
    iambriccardo
  4. Scope: Backend
    obostjancic
  5. Scope: Backend
    jan-auer
  6. Scope: Frontend
    obostjancic
  7. 5 of 5
    jan-auer
  8. Scope: Frontend
    Dav1dde

Stage 2: Productionize for LA

  1. 6 of 7
    obostjancic
  2. jan-auer
  3. jan-auer
  4. Dav1dde
  5. Dav1dde

Q1: GA Follow-up

@jan-auer jan-auer self-assigned this Nov 20, 2023
sthagen pushed a commit to sthagen/getsentry-sentry-python that referenced this issue Nov 24, 2023
DDM wants to show code locations with metrics. Locations are semi-static information: they change infrequently, so they don't need to be reported with every data point.

Sentry expects locations to be reported at least once per day. With backdating of metrics, the timestamp used to report the location is the metric bucket's timestamp rounded down to the start of the day (UTC timezone).

The metrics aggregator keeps a cache of previously reported locations. When a location is seen for the first time on a day, it is added to a list of pending locations. On the next flush cycle, all pending locations are sent to Sentry in the same envelope as the metric buckets.

See: getsentry/relay#2751
Epic: getsentry/sentry#60260
---------

Co-authored-by: Armin Ronacher <armin.ronacher@active-4.com>
Co-authored-by: Anton Pirker <anton.pirker@sentry.io>
phacops pushed a commit to getsentry/relay that referenced this issue Nov 27, 2023
Implements `metric_meta` envelope item and storage in Redis.

Epic: getsentry/sentry#60260
@github-actions github-actions bot locked and limited conversation to collaborators Feb 1, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
Development

No branches or pull requests

2 participants