Comments (5)
I don't know if any tracer is able to accept completely arbitrary IDs. These IDs are usually captured in the span and stored in the tracing backend, so the backend data model puts additional limitations on what can be used as an ID.
I would say reusing IDs not generated by the tracing infrastructure is not where the industry is going to (e.g. https://github.com/w3c/trace-context), but some tracing platforms might support them for legacy services. E.g. in Jaeger, as long as your legacy/external IDs fit in 16-bytes array, it can still capture/represent them in the storage.
There is still going to be an issue with using message-id as span-id, because APIs like OpenTracing/OpenCensus don't allow you to provide a custom id when creating a new span (you'd need to hack the tracer implementation a bit), and you do need to create a span for the producer generating a message in order to capture proper causality between spans in the trace.
from specification.
Yes, you can persist the trace context with the data/message and use it to resume the trace later. But many tracing systems wouldn't work very well with workflows that takes days/weeks to complete.
from specification.
It's not a question of OpenTracing, but of the specific tracing library implementation you bind your code to. For example, in Jaeger you can force the use of the external trace ID (but not span IDs) provided it is representable as a 8-bytes or 16-bytes array.
from specification.
Do you know any library allowing me to inject those IDs?
I mean most of the services I'm working with are fragmented in time and the "built-in" ID generation is a show stopper for me.
Thanks!
from specification.
Hello, ok I understand better a little bit. How do you track a workflow which is fragmented in time and space? A digital contract is suspended and continued after a few weeks of delay? How should I connect the new spans to the old ones? Or in a stock market platform where some part of the process is cultivated in a different system / counrty? Should I persist the context and inject it manually? Thanks...
from specification.
Related Issues (20)
- Typed support for semantic conventions
- Add structured message support to Semantic Conventions HOT 17
- Finish time of child Span (ChildOf reference) HOT 4
- Event-driven and reactive systems HOT 2
- Proposal: Add more semantics for message HOT 1
- Trace time message spent in Kafka HOT 5
- Mark the specification as obsolete since the effort moved to OpenTelemetry HOT 1
- Add discrete events HOT 1
- Script to generate a PDF doc from Markdown HOT 1
- How to meet criteria of log structured timestamp? HOT 1
- Tracing TCP HOT 3
- The Carrier Formats are not in sync
- How to add baggage items to Mongo DB operations using jaeger-cloud-starter in java HOT 2
- Opentracing information in a message HOT 2
- windows HOT 1
- Clarify if null values are considered valid tag values? HOT 1
- me HOT 2
- Invalid link to data_conventions.md HOT 1
- 🛑 Deprecating OpenTracing HOT 6
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 specification.