Skip to content

[Feat]: Support disabling A2A OTEL Instrumentation #604

Description

@vinoo999

Is your feature request related to a problem? Please describe.

The A2A server instrumentation for OpenTelemetry spans is too verbose. The current way to disable A2A spans is to disable at the export level. The current library disables instrumentation based on import error only

Describe the solution you'd like

What I would like to do is disable this at the instrumentation level rather than the export level. This can be done in a few ways; one that may be most simple to users is to configure an environment variable A2A_OTEL_INSTRUMENTATION that supports disabling spans for the a2a python library

Describe alternatives you've considered

  • Custom exporter that filters out a2a.server.* spans; this is an antipattern and can cause broken trace trees
  • Injecting a custom tracer provider for the a2a-python module

Additional context

#295 identifies that tracing is only done if a tracer is configured. The underlying issue around noisy tracing or disabling tracing is not addressed.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Activity

  1. added theissue type on Jan 2, 2026
  2. self-assigned this
    on Jan 7, 2026
  3. lkawka commented on Jan 7, 2026

    @lkawka
    Member

    Hi vinoo999,

    It makes sense to allow for explicitly disabling the OTEL tracing. I like the env variable approach you described above. However, we can't prioritize this work now. Feel free to create a PR for this.

  4. assigned and unassigned on Jan 7, 2026
  5. aabmass commented on Jan 9, 2026

    @aabmass
    • Custom exporter that filters out a2a.server.* spans; this is an antipattern and can cause broken trace trees

    FYI open-telemetry/opentelemetry-python#4861 will let you disable specific instrumentations. The environment variable seems like a good stop gap though.

  6. vinoo999 commented on Jan 12, 2026

    @vinoo999
    ContributorAuthor

    FYI open-telemetry/opentelemetry-python#4861 will let you disable specific instrumentations. The environment variable seems like a good stop gap though.

    Nice this will be good to have and standardized across providers.

    in the meantime created: #611

  7. added a commit that references this issue on Jan 29, 2026
    72216b9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions