feat(ember)!: Use function and ui.task span ops for route hooks and runloop - #22669
Open
msonnb wants to merge 6 commits into
Open
feat(ember)!: Use function and ui.task span ops for route hooks and runloop#22669msonnb wants to merge 6 commits into
function and ui.task span ops for route hooks and runloop#22669msonnb wants to merge 6 commits into
Conversation
Contributor
size-limit report 📦
|
function span op for route hooksfunction and ui.task span ops for route hooks and runloop
msonnb
force-pushed
the
ms/js-3105-angular-ops
branch
from
July 27, 2026 11:44
de8350a to
7ac0b5d
Compare
msonnb
force-pushed
the
ms/js-3105-ember-route-hooks
branch
from
July 27, 2026 11:44
915c173 to
62b0ee0
Compare
msonnb
force-pushed
the
ms/js-3105-angular-ops
branch
from
July 27, 2026 12:10
7ac0b5d to
6c7646e
Compare
msonnb
force-pushed
the
ms/js-3105-ember-route-hooks
branch
from
July 27, 2026 12:10
e55c2e0 to
7ae594a
Compare
msonnb
force-pushed
the
ms/js-3105-ember-route-hooks
branch
from
July 27, 2026 13:51
7ae594a to
f9dc60e
Compare
Route hooks are functions, not their own op category. The hook name moves to `code.function.name` and `ember.route.hook`. Ref: JS-3105 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Match the `function` op and the new `code.function.name` / `ember.route.hook` attributes. Span finders discriminate on the hook name, since all hooks now share one op. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Queue values are phase detail, and Ember allows custom queues. The queue moves to the `ember.runloop.queue` attribute. Ref: JS-3105 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Component renders use `ui.render`, component definition lookups use `function`, and the initial load uses `ui.mount`. Both component spans set `ui.component_name`. Ref: JS-3105 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
msonnb
force-pushed
the
ms/js-3105-ember-route-hooks
branch
from
July 28, 2026 13:52
f9dc60e to
d9b3e6c
Compare
msonnb
marked this pull request as ready for review
July 28, 2026 14:45
msonnb
requested review from
nicohrubec and
s1gr1d
and removed request for
a team
July 28, 2026 14:46
nicohrubec
reviewed
Jul 29, 2026
nicohrubec
left a comment
Member
There was a problem hiding this comment.
overall lgtm, just two questions about conventions
| attributes: { | ||
| [SENTRY_OP]: BROWSER_UI_TASK_SPAN_OP, | ||
| [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.ember', | ||
| 'ember.runloop.queue': queue, |
Member
There was a problem hiding this comment.
m: does ember.runloop.queue also need to be added to @sentry/conventions?
Member
Author
| [SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.ember', | ||
| [SENTRY_OP]: GENERAL_FUNCTION_SPAN_OP, | ||
| [CODE_FUNCTION_NAME]: hookName, | ||
| 'ember.route.hook': hookName, |
Member
There was a problem hiding this comment.
m: same for ember.route.hook
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Three Ember op cleanups:
instrumentRoutePerformanceusefunctioninstead ofui.ember.route.<hook>. The hook name is preserved incode.function.nameandember.route.hook.ui.taskinstead ofui.ember.runloop.<queue>. The queue is preserved inember.runloop.queue. Ember allows custom queues, so the suffix was unbounded.ui.render, component definition lookups usefunction, and the initial load usesui.mount. Both component spans setui.component_name.Since spans that used to be distinguished by op suffix now share one op, the test helpers and E2E span finders identify them by attribute instead.
Note
ui.mountis not in the conventions registry yet, so it is a literal with a TODO to swap in the constant once registered.Part of #22446