Skip to content

[OTel] Three different AnyValue decoders, two of them lossy #173

Description

@krisztianfekete

We decode OTel AnyValue in three places and only one does it right. extraction.py silently drops array/kvlist/bytes values, loader/otlp.py JSON-dumps the raw proto structure, and only otlp_processing.py decodes it properly (and only for log bodies).

Concrete symptom: gen_ai.response.finish_reasons shows up as the literal blob {"values":[{"stringValue":"stop"}]} via one path and vanishes via another. One shared decoder fixes all three call sites.

Metadata

Metadata

Assignees

Labels

OTelMostly OTel compliance, following best practices, etc.bugSomething isn't workinggood first issueGood for newcomers

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions