SpanLink

data class SpanLink(val fromSpanId: ByteString, val linkedTraceId: ByteString, val linkedSpanId: ByteString, val attributes: Map<String, String> = mapOf("kuilt.causality" to "potential"))

A derived causal edge: span fromSpanId could have been caused by the predecessor span identified by linkedTraceId / linkedSpanId.

This maps directly onto an OTLP Span.Link. The kuilt.causality=potential attribute is non-negotiable: a link records happens-before, which is a superset of true causality — it says "could have caused," never "did."

Constructors

Link copied to clipboard
constructor(fromSpanId: ByteString, linkedTraceId: ByteString, linkedSpanId: ByteString, attributes: Map<String, String> = mapOf("kuilt.causality" to "potential"))

Properties

Link copied to clipboard

link attributes; always carries kuilt.causality=potential.

Link copied to clipboard
val fromSpanId: ByteString

the span that carries the link (the successor e2).

Link copied to clipboard
val linkedSpanId: ByteString

the predecessor's span id (the e1 being linked to).

Link copied to clipboard
val linkedTraceId: ByteString

the predecessor's trace id.