A span is a key-value attribute about some point in time event
A trace is a DAG of spans that tells you a story about some related events
11–20 of 47 posts
A span is a key-value attribute about some point in time event
A trace is a DAG of spans that tells you a story about some related events
What clicked for me is: A span is a key-value attribute about some point in time event A trace is a DAG of spans that tells you a story about some related events
As I understand it, a metric is information at a point in time.
A span however has a start timestamp and end timestamp, and is about a single operation that happens across that time.
https://opentelemetry.io/docs/specs/otel/metrics/
vs
The amount of additional code that it needs is horrible. We will now have to spend more brain juice on telemetry when working on a feature.
OTEL as a set of standards is admirable and ambitious, though in my experience actual implementation differs significantly between different vendors and they all seem to overcomplicate it.
Plus that tens of terabytes of data you have to store for a week worth of traces
Earlier quoted context omitted.
Plus that tens of terabytes of data you have to store for a week worth of traces
That's why you sample just enough instead of storing everything
We run with Debug logging on in prod for that reason too. We also ingest insane amounts of data but it does seem to be worth it for a sufficiently complex and important enough system to really have it all.
This is sort of all just a reframing of existing technologies. Span = an event (which is bascially just a log with an associated trace), and some data fields. Trace = a log for a request with a unique Id. A useful thing about opentelemetry is that there's auto-instrumentation so you can get this all out-of-the-box for most JVM apps. Of course you could probably log your queries instead, so it's not necessarily a game…
Earlier quoted context omitted.
Plus that tens of terabytes of data you have to store for a week worth of traces
That's why you sample just enough instead of storing everything
This is sort of all just a reframing of existing technologies. Span = an event (which is bascially just a log with an associated trace), and some data fields. Trace = a log for a request with a unique Id. A useful thing about opentelemetry is that there's auto-instrumentation so you can get this all out-of-the-box for most JVM apps. Of course you could probably log your queries instead, so it's not necessarily a game…