Environment
SaaS (https://sentry.io/)
Steps to Reproduce
-
Send an OTLP span to Sentry that carries any array-valued attribute. The OpenTelemetry GenAI semantic conventions are an easy trigger because several of their helpers always emit slices — e.g. semconv.GenAIResponseFinishReasons("stop") calls GenAIResponseFinishReasonsKey.StringSlice(val) and produces a gen_ai.response.finish_reasons StringSlice attribute. Google's ADK 1.0 (google.golang.org/adk@v1.0.0) emits this attribute on every generate_content span via internal/telemetry/telemetry.go:122.
-
In the Sentry UI, open the trace and click on the affected span to load its details.
-
The frontend calls GET /api/0/projects/{org}/{project}/trace-items/{id}/?item_type=spans&....
Expected Result
The trace item details endpoint returns the span's attributes, including array-valued attributes — either decoded as native arrays now that sentry-protos#153 introduced an Array/ValArray AnyValue type, or serialised to a JSON string consistent with the earlier OTLP-side workaround in relay#4930. The UI shows the span detail panel.
Actual Result
The API returns HTTP 400 with body:
{
"detail": {
"code": "unknown column type in protobuf: array",
"message": "Invalid request",
"extra": {}
}
}
Product Area
Explore
Link
No response
DSN
https://8f4d98c93ddebed53b833722cde982d5@o4508049534025728.ingest.us.sentry.io/4508049536057344
Version
No response
Environment
SaaS (https://sentry.io/)
Steps to Reproduce
Send an OTLP span to Sentry that carries any array-valued attribute. The OpenTelemetry GenAI semantic conventions are an easy trigger because several of their helpers always emit slices — e.g. semconv.GenAIResponseFinishReasons("stop") calls GenAIResponseFinishReasonsKey.StringSlice(val) and produces a gen_ai.response.finish_reasons StringSlice attribute. Google's ADK 1.0 (google.golang.org/adk@v1.0.0) emits this attribute on every generate_content span via internal/telemetry/telemetry.go:122.
In the Sentry UI, open the trace and click on the affected span to load its details.
The frontend calls GET /api/0/projects/{org}/{project}/trace-items/{id}/?item_type=spans&....
Expected Result
The trace item details endpoint returns the span's attributes, including array-valued attributes — either decoded as native arrays now that sentry-protos#153 introduced an Array/ValArray AnyValue type, or serialised to a JSON string consistent with the earlier OTLP-side workaround in relay#4930. The UI shows the span detail panel.
Actual Result
The API returns HTTP 400 with body:
{
"detail": {
"code": "unknown column type in protobuf: array",
"message": "Invalid request",
"extra": {}
}
}
Product Area
Explore
Link
No response
DSN
https://8f4d98c93ddebed53b833722cde982d5@o4508049534025728.ingest.us.sentry.io/4508049536057344
Version
No response