Skip to content

Provide unit conversion for common non-second duration instruments (TSH-20621) (copy #8415)#8423

Merged
bnjjj merged 9 commits intodevfrom
mergify/copy/dev/pr-8415
Oct 16, 2025
Merged

Provide unit conversion for common non-second duration instruments (TSH-20621) (copy #8415)#8423
bnjjj merged 9 commits intodevfrom
mergify/copy/dev/pr-8415

Conversation

@mergify
Copy link
Contributor

@mergify mergify bot commented Oct 15, 2025

Customers of Apollo integrate their OTLP streams with various different observability platform providers that have varying levels of sophistication on how they ingest incoming data.

We have a migration blocking use case where we require the ability to have a metric stream be sent in units of milliseconds. If this was a brand new metric we wouldnt need to, but:

  • The custom metric has existed for years on our Apollo Gateway based federated graph, emanating this metric as milliseconds and is defined as milliseconds in Datadog

  • Our internal customers have significantly leveraged this metric over the years and there are 2,322 different datadog artifacts (dashboards, SLOs, monitors, etc) that use this metric, is referred 4,184 different times. We do not have the capacity of transitioning customers to a new metric that uses different units at this time, it would have to be a gradual process over time, after completion of our Router migration

  • We need both Router and Gateway to be producing this metric as we migrate the remainder of traffic off our Gateway solution so that those using this metric to monitor the performance and availability of subgraphs have continuity throughout the migration of clients from the Gateway soluction to the Router solution.

  • When attempting to send this metric via Router, it was observed that the values emanated from Router are 1000 times lower... the Datadog ingestion pipeline will not do unit conversion of incoming data to match how the metric is defined in the metric metadata.

  • Therefore we need Router the ability for Router to emanate this metric in ms units. I am fine with verbiage in the documentation that one should strive to use second units for durations, and only use non-seconds when they uncover the reality of integrating with various OTLP ingesting systems requires some flexibility, especially for migrations where your customers may have heavily invested in a particular metric in their previous incarnation of a federated graph with Gateway.


Checklist

Complete the checklist (and note appropriate exceptions) before the PR is marked ready-for-review.

  • PR description explains the motivation for the change and relevant context for reviewing
  • PR description links appropriate GitHub/Jira tickets (creating when necessary)
  • Changeset is included for user-facing changes
  • Changes are compatible1
  • Documentation2 completed
  • Performance impact assessed and acceptable
  • Metrics and logs are added3 and documented
  • Tests added and passing4
    • Unit tests
    • Integration tests
    • Manual tests, as necessary

Exceptions

Note any exceptions here

Notes


This is an automatic copy of pull request #8415 done by [Mergify](https://mergify.com).

Footnotes

  1. It may be appropriate to bring upcoming changes to the attention of other (impacted) groups. Please endeavour to do this before seeking PR approval. The mechanism for doing this will vary considerably, so use your judgement as to how and when to do this.

  2. Configuration is an important part of many changes. Where applicable please try to document configuration examples.

  3. A lot of (if not most) features benefit from built-in observability and debug-level logs. Please read this guidance on metrics best-practices.

  4. Tick whichever testing boxes are applicable. If you are adding Manual Tests, please document the manual testing (extensively) in the Exceptions.

theJC added 7 commits October 15, 2025 15:37
(cherry picked from commit 70e5df5)
(cherry picked from commit 093de82)
…-generated suggestions)

(cherry picked from commit 6486219)
(cherry picked from commit 0186eb9)
…-generated suggestions)

(cherry picked from commit 3e997f1)
@mergify mergify bot requested a review from a team October 15, 2025 15:37
@mergify mergify bot requested a review from a team as a code owner October 15, 2025 15:37
@apollo-cla
Copy link

@mergify[bot]: Thank you for submitting a pull request! Before we can merge it, you'll need to sign the Apollo Contributor License Agreement here: https://contribute.apollographql.com/

@apollo-librarian
Copy link

apollo-librarian bot commented Oct 15, 2025

✅ Docs preview ready

The preview is ready to be viewed. View the preview

File Changes

0 new, 1 changed, 0 removed
* graphos/routing/(latest)/observability/router-telemetry-otel/enabling-telemetry/instruments.mdx

Build ID: ab192899b01ec0e981fdb229
Build Logs: View logs

URL: https://www.apollographql.com/docs/deploy-preview/ab192899b01ec0e981fdb229

Signed-off-by: Benjamin <5719034+bnjjj@users.noreply.github.com>
@bnjjj bnjjj force-pushed the mergify/copy/dev/pr-8415 branch from 7f2ffe5 to 3c65baf Compare October 15, 2025 15:44
@bnjjj bnjjj enabled auto-merge (squash) October 15, 2025 15:45
@bnjjj bnjjj merged commit 338b1a0 into dev Oct 16, 2025
15 checks passed
@bnjjj bnjjj deleted the mergify/copy/dev/pr-8415 branch October 16, 2025 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants