Skip to content

Conversation

k-fish
Copy link
Member

@k-fish k-fish commented Oct 7, 2025

Summary

This allows the js sdk to send in new trace metric protocol items, although this code is experimental since the schema may still change. Most of this has been copied from logs so some parts may need to be modified / removed later (eg. api, buffer) but this should allow us to start on UI work by sending in larger amounts of data from sentry js app to test grouping / aggregations etc.

Closes LOGS-366

This allows the js sdk to send in new trace metric protocol items, although this code is experimental since the schema may still change. Most of this has been copied from logs so some parts may need to be modified / removed later (eg. buffer) but this should allow us to start on UI work by sending in larger amounts of data from sentry js app to test grouping / aggregations etc.
@k-fish k-fish requested review from AbhiPrasad and a team October 7, 2025 14:54
cursor[bot]

This comment was marked as outdated.

Copy link
Contributor

github-actions bot commented Oct 7, 2025

size-limit report 📦

⚠️ Warning: Base artifact is not the latest one, because the latest workflow run is not done yet. This may lead to incorrect results. Try to re-run all tests to get up to date results.

Path Size % Change Change
@sentry/browser 24.4 kB +0.59% +143 B 🔺
@sentry/browser - with treeshaking flags 22.9 kB +0.58% +132 B 🔺
@sentry/browser (incl. Tracing) 40.61 kB +0.42% +169 B 🔺
@sentry/browser (incl. Tracing, Replay) 78.98 kB +0.2% +157 B 🔺
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 68.62 kB +0.22% +147 B 🔺
@sentry/browser (incl. Tracing, Replay with Canvas) 83.67 kB +0.2% +167 B 🔺
@sentry/browser (incl. Tracing, Replay, Feedback) 95.82 kB +0.13% +124 B 🔺
@sentry/browser (incl. Feedback) 41.1 kB +0.33% +135 B 🔺
@sentry/browser (incl. sendFeedback) 29.06 kB +0.51% +147 B 🔺
@sentry/browser (incl. FeedbackAsync) 33.97 kB +0.38% +127 B 🔺
@sentry/react 26.11 kB +0.53% +136 B 🔺
@sentry/react (incl. Tracing) 42.55 kB +0.33% +136 B 🔺
@sentry/vue 28.92 kB +0.52% +148 B 🔺
@sentry/vue (incl. Tracing) 42.39 kB +0.31% +129 B 🔺
@sentry/svelte 24.44 kB +0.63% +151 B 🔺
CDN Bundle 26.63 kB +3.35% +863 B 🔺
CDN Bundle (incl. Tracing) 41.15 kB +2.02% +814 B 🔺
CDN Bundle (incl. Tracing, Replay) 77.44 kB +1.13% +863 B 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) 82.9 kB +1.01% +823 B 🔺
CDN Bundle - uncompressed 78.18 kB +3.75% +2.82 kB 🔺
CDN Bundle (incl. Tracing) - uncompressed 122.18 kB +2.37% +2.82 kB 🔺
CDN Bundle (incl. Tracing, Replay) - uncompressed 237.34 kB +1.21% +2.82 kB 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 250.1 kB +1.14% +2.82 kB 🔺
@sentry/nextjs (client) 44.58 kB +0.36% +157 B 🔺
@sentry/sveltekit (client) 40.98 kB +0.28% +112 B 🔺
@sentry/node-core 50.74 kB +0.34% +171 B 🔺
@sentry/node 154.36 kB +0.12% +174 B 🔺
@sentry/node - without tracing 92.59 kB +0.19% +172 B 🔺
@sentry/aws-serverless 106.32 kB +0.18% +181 B 🔺

View base workflow run

Copy link
Contributor

github-actions bot commented Oct 7, 2025

node-overhead report 🧳

Note: This is a synthetic benchmark with a minimal express app and does not necessarily reflect the real-world performance impact in an application.
⚠️ Warning: Base artifact is not the latest one, because the latest workflow run is not done yet. This may lead to incorrect results. Try to re-run all tests to get up to date results.

Scenario Requests/s % of Baseline Prev. Requests/s Change %
GET Baseline 9,019 - 8,994 +0%
GET With Sentry 1,401 16% 1,430 -2%
GET With Sentry (error only) 6,349 70% 6,248 +2%
POST Baseline 1,209 - 1,205 +0%
POST With Sentry 522 43% 555 -6%
POST With Sentry (error only) 1,088 90% 1,068 +2%
MYSQL Baseline 3,409 - 3,329 +2%
MYSQL With Sentry 475 14% 505 -6%
MYSQL With Sentry (error only) 2,768 81% 2,716 +2%

View base workflow run

@chargome chargome self-requested a review October 8, 2025 07:03
@chargome chargome self-assigned this Oct 8, 2025
@chargome
Copy link
Member

chargome commented Oct 8, 2025

@k-fish looks good! I'll hijack your PR so we can land this today

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

k-fish added a commit to getsentry/sentry-python that referenced this pull request Oct 8, 2025
Similar to getsentry/sentry-javascript#17883, this allows the py sdk to send in new trace metric protocol items, although this code is experimental since the schema may still change. Most of this code has been copied from logs (eg. log batcher -> metrics batcher) in order to dogfood, once we're more sure of our approach we can refactor.
Copy link

linear bot commented Oct 8, 2025

…etrics) since trace metric is an internal dataset detail
cursor[bot]

This comment was marked as outdated.

@chargome chargome merged commit f4c6c54 into develop Oct 9, 2025
365 of 372 checks passed
@chargome chargome deleted the feat/tracemetrics/add-experimental-metrics branch October 9, 2025 09:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants