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

No one assigned

    Labels

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

    Type

    Fields

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions