5 ms·
Just a quick summary. Trace - One unique id for an "action", say customer purchasing an item. A set of spans exist under a trace. Span - An interval with a st
by maurys 6y ago
Just a quick summary.
Trace - One unique id for an "action", say customer purchasing an item. A set of spans exist under a trace.
Span - An interval with a start time and duration. Can add tags for querying. Can add logs for richer information but not indexed. Each span belongs to exactly one trace.
Baggage - key value pairs you can pass between services. They aren't tagged as part of the span or trace, but the receiving service can use these values to make decisions or add them to its local spans as logs or spans.
Under the hood, it's just a set of HTTP headers passed between services. The first span creates a trace id and passes that to all downstream services as a header.
Each service independently pushes it's span data into a centralised collector which indexes the data and exposes it over an UI/API.
OpenTelemetry provides a specification and some reference implementation across languages.
At least, this is my understanding of it. I've dabbled with Jaegar but I'm not affiliated with any of these.
- boggsi 6y agoTo all the OpenTelemetry people reading this page - please include the above description somewhere in your project. I actually googled the definition of telemetry because I had no idea what you were talking about, I thought it had something to do with space observations given all the telescopes? My second guess was that it had something to do with the way data from accelerometers was handled? Standardising tooling for sensors? This comment was the first thing to explain that it's better logging. That's actually something I'd be interested in, running several different datascience services/analyses, logging was something I implemented then gave up on because it sucks so much. You're losing a lot of potential players because you have given 0 effort to explaining in simple terms what you are. A "From logging to telemetry" primer would probably garner you a lot more interest.
- privacyonsec 6y agoit's probably not on the front page but they actually explain what is telemetry and observability here: https://opentelemetry.io/about/ https://opentelemetry.io/about/ But I agree this is a better explanation :)
- cnr 6y agoMy first thought was "TV viewership metrics", but in this context adjective "open" seemed a little contradictory.
- kortex 6y agoThank you, these definitions are great. I muddled my way trough the example and had to infer the difference between, trace and span from context. I still don't get how trances/spans are shared across rpc boundaries but I know that's a thing one can do.
- dkarlovi 6y agoAs I understand it, you pass your current span ID to the remote RPC endpoint, it continues adding to it from there, creating their own nested spans etc. When it gets back to you and all spans are merged, you can see the whole picture, but don't need to provide all the details all the way down.