Comments (5)
That would be great. Make sure to add some sort of test.
I think it's OK to strip dashes out as it's not as if we can use anything with dashes in.
from router.
Hi @kindermax,
I'm afraid that what you are trying to do can't possibly work. Extracting the trace ID and constructing the root span is necessarily the first thing that should happen in the router. (There are some things that happen before but we are working to fix this).
I think we would accept a PR that simply strips out dashes in CustomTraceIdPropagator
.
Alternatively is this driven by use of AWS X-ray? If you can use a standard propagator and trace_id format it would be prefereable.
from router.
Hi, unfortunately in my case uuid4 x-request-id
is a company standard and generated by our nginx so I can not change its format.
I think stripping dashes in CustomTraceIdPropagator
would be enough in my case since I just need its value in my logs. Then I can do the reverse thing (adding dashes again) in my log processor.
If you ok with it, I can try to make a pr
from router.
@kindermax Do you think that the PR #5071 will resolve this satisfactorily?
from router.
@abernix well, partially yes. If I put a log processor after router like this router | log_processor
, then I will be able to restore original trace_id. Sure it wont work if the original trace_id were without dashes, because I will add dashes when I shouldn't. Alternatively, if there was a way just to add my header value to some field in logs (its a paid feature as far as i know) I would be able to just extract it in log processor.
from router.
Related Issues (20)
- 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
- Add standard attributes to all LOGS from request/context HOT 7
- Provide the parsed operation AST through the Rust plugin context
- Consider moving traffic shaping plugins earlier in the request lifecycle
- base64::decode is too strict HOT 2
- Router responds with different error message for 400 subgraph responses than gateway HOT 3
- Client headers can no longer be mutated for GraphOS reporting HOT 2
- Keep router span name consistent and do not use operation name HOT 6
- Configure http header size and limit
- Warn only mode for max http request bytes and parser tokens
- Include `request` span in spec_compliant mode HOT 14
- Support encryption for the entity redis cache
- External Coprocessor: Support for connections to be made with h2c (http2 cleartext/prior knowledge) and/or Unix Domain Sockets
- Extremely slow parse times can cause the router to stop serving requests
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.