Comments (6)
related to this too. #5056
from router.
Hey @abernix. Thanks for sharing. I had a quick look but from my understanding, if it is stripping the dashes, how does that provide continuity using the same trace_id on the request, or am I missing something?
from router.
Do you think this is ultimately the same as #4892? If so, it should/could be fixed by #5071? (It was recently opened).
Can you take a look?
from router.
@BrynCooke You're pretty connected to the work here - Can you advise? (Look carefully they're both different nuances of dashes in trace IDs)
from router.
@juancarlosjr97 Trace ID in opentelemetry is represented as a 128 bit number. This is usually represented as a hex string without dashes and is based on w3c trace id format.
The UUID that is supplied by kong is a 128 but UUID. This has dashes in but is still 128 bits and so can be coerced into the Otel 128 bit number by removing the dashes and parsing as hex.
When sending to your APM, depending on protocol it will send the trace ID in different formats, but the APM should understand this and decode them to the same value. At least that's the theory.
I haven't used kong, but the docs seem to indicate that the otel plugin allows propagation of various formats:
https://docs.konghq.com/hub/kong-inc/opentelemetry/#propagation. Is this something you have configured?
from router.
Hey @BrynCooke, if that is the case, then brilliant! Nothing else to do here, just wait until #5071 is merged and I will report back this issue.
Regarding our kong setup, we have trace id enabled in traces. The format is something I will have to check when the MR gets in and I can test it on a live environment.
from router.
Related Issues (20)
- Propostal: Injection of state into plugin init
- docs: broken link for "tech notes" HOT 3
- Rust v1.78.0 router-bridge startup panic HOT 1
- distributed Query Plan cache may be poisoned by experimental query plan features HOT 2
- Proposal: Remove apollo-router-scaffold
- Add test that limits max size of router json schema
- Native plugins not called on invalid GraphQL query since 1.45
- `early_cancel` is not documented HOT 1
- document private response caching
- Request/Response body size metric per operation name
- Rhai Scripting - how to get subgraph response code HOT 2
- Query plan cache key follow up
- High increase of base memory usage by Router v1.46.0 HOT 2
- Subgraph batching clears the context when responding with an array of the same operation HOT 1
- Graphql requests return non-graphql responses
- Add support for studio trace id selector in telemetry HOT 1
- Metrics overflow should be logged as a warning rather than error
- Support unix time in ms in rhai scripts
- Hot reload downtime under load HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from router.