getsentry / getsentry/sentry-go
gRPC trace propagation/continuation
- Dominant language
- Go
- Stars
- 1.1k
- Forks
- 262
- Avg merge
- 1d 48m
- Merged PRs (30d)
- 7
Description
### Problem Statement
I will write in details later, but TLDR: We have one for HTTP and it's in the convention (docs here: https://docs.sentry.io/platforms/javascript/guides/node/tracing/distributed-tracing/), but we don't have that for gPRC.
### Solution Brainstorm
Maybe add the custom header name on the `ServerOptions` (https://github.com/getsentry/sentry-go/blob/9b7a5624089638c2ba32feb0f19ada8d43a6cc45/grpc/server.go#L24-L33)? Therefore:
```go
type ServerOptions struct {
// Repanic determines whether the application should re-panic after recovery.
Repanic bool
// WaitForDelivery determines if the interceptor should block until events are sent to Sentry.
WaitForDelivery bool
// Timeout sets the maximum duration for Sentry event delivery.
Timeout time.Duration
SentryTraceHeaderKey string
BaggageHeaderKey string
}
```
Contributor guide
Assessment
This issue has not been assessed yet.