I’m opening this discussion to ask about the current and planned support model for Apollo Client auto-instrumentation in OpenTelemetry JS.
From what I can tell, there does not appear to be a dedicated Apollo Client instrumentation package, such as @opentelemetry/instrumentation-apollo-client. Existing browser instrumentation can capture the underlying fetch or XHR requests, but it does not appear to provide Apollo Client or GraphQL-client-level telemetry, such as operation names, operation types, GraphQL errors, cache behavior, or Apollo Link lifecycle spans.
I wanted to ask:
- Is the absence of Apollo Client-specific auto-instrumentation intentional?
- Is Apollo Client considered in scope for OpenTelemetry JS instrumentation?
- Are there any current plans to add dedicated Apollo Client instrumentation?
- If there are no current plans, are maintainers open to a proposal or contribution for this?
- Is the recommended approach today to rely only on generic
fetch/XHR instrumentation and add custom instrumentation manually for GraphQL metadata?
- Are there technical, semantic convention, privacy, or maintenance concerns that have made Apollo Client instrumentation difficult to support?
The motivation is that Apollo Client is widely used in frontend JavaScript applications, and generic HTTP spans often do not provide enough GraphQL-specific context to understand client-side GraphQL behavior. It would be helpful to understand whether this is intentionally out of scope, already planned, or something the community could help contribute.
Tip: [React](https://github.blog/news-insights/product-news/add-reactions-to-pull-requests-issues-and-comments/) with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. [Learn more here](https://opentelemetry.io/community/end-user/issue-participation/).
I’m opening this discussion to ask about the current and planned support model for Apollo Client auto-instrumentation in OpenTelemetry JS.
From what I can tell, there does not appear to be a dedicated Apollo Client instrumentation package, such as
@opentelemetry/instrumentation-apollo-client. Existing browser instrumentation can capture the underlyingfetchor XHR requests, but it does not appear to provide Apollo Client or GraphQL-client-level telemetry, such as operation names, operation types, GraphQL errors, cache behavior, or Apollo Link lifecycle spans.I wanted to ask:
fetch/XHR instrumentation and add custom instrumentation manually for GraphQL metadata?The motivation is that Apollo Client is widely used in frontend JavaScript applications, and generic HTTP spans often do not provide enough GraphQL-specific context to understand client-side GraphQL behavior. It would be helpful to understand whether this is intentionally out of scope, already planned, or something the community could help contribute.
Tip: [React](https://github.blog/news-insights/product-news/add-reactions-to-pull-requests-issues-and-comments/) with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding
+1orme too, to help us triage it. [Learn more here](https://opentelemetry.io/community/end-user/issue-participation/).