-
Notifications
You must be signed in to change notification settings - Fork 482
WIP: feat: enable orchestrion tracing with error stack traces #3836
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
base: main
Are you sure you want to change the base?
Conversation
name: error-tracking | ||
description: The entry point of a Go program with error tracking. | ||
|
||
aspects: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Open question: is this the best place for the orchestrion.yml
file to exist? While we call this an "integration", what we are tracing is not a contrib but rather the product itself similar to profiling. For profiling, orchestrion.yml
is in ./profiling
, so maybe keeping this file in ./instrumentation/errortrace
is an okay option.
BenchmarksBenchmark execution time: 2025-08-07 21:29:03 Comparing candidate commit 5dab662 in PR branch Found 0 performance improvements and 0 performance regressions! Performance is the same for 24 metrics, 0 unstable metrics. |
48d9756
to
662db1d
Compare
9956be2
to
d98075f
Compare
d6aef88
to
8c93ec7
Compare
ctx := context.TODO() | ||
var span *tracer.Span | ||
span, _ = tracer.StartSpanFromContext(ctx, {{ printf "%q" .Function.Name }}, | ||
tracer.Tag("function-name", {{ printf "%q" .Function.Name }}), | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ctx := context.TODO() | |
var span *tracer.Span | |
span, _ = tracer.StartSpanFromContext(ctx, {{ printf "%q" .Function.Name }}, | |
tracer.Tag("function-name", {{ printf "%q" .Function.Name }}), | |
) | |
{{ $ctx := .Function.ArgumentOfType "context.Context" -}} | |
var span *tracer.Span | |
span, _ = tracer.StartSpanFromContext(ctx, {{ printf "%q" .Function.Name }}, | |
tracer.Tag("function-name", {{ printf "%q" .Function.Name }}), | |
) |
Out of curiosity, why are there so many modified |
What does this PR do?
Adds a new orchestrion integration for error tracing.
Motivation
In order to enable using orchestrion to automatically trace error stack traces, we need to register the
errortrace
package as an integration. This builds upon #3709Jira: LANGPLAT-160
Reviewer's Checklist
./scripts/lint.sh
locally.Unsure? Have a question? Request a review!