TraceCapabilities

class TraceCapabilities(val threadIdentity: Boolean, val systemTraceIntegration: Boolean, val counters: Boolean, val flows: Boolean)(source)

What the current target can do for tracing out of the box, as shipped in :runtime. This is the extension seam for new platforms: a target compiles and works with every flag false, and gains fidelity when someone writes its actual of platformCapabilities and platformTraceSink.

A missing capability degrades, it never fails: a sink without thread identity omits it, and one that cannot draw flows ignores parentSpanId. A plain final class (not a data class) so flags can be added later without a binary-incompatible copy/componentN change.

Example:

if (platformCapabilities.counters) println("pending/running tracks are available")

Constructors

Link copied to clipboard
constructor(threadIdentity: Boolean, systemTraceIntegration: Boolean, counters: Boolean, flows: Boolean)

Creates a capability descriptor; mainly useful for custom platform backends and tests.

Properties

Link copied to clipboard

that default sink publishes pending/running counter tracks.

Link copied to clipboard

that default sink draws span links from parentSpanId.

Link copied to clipboard

:runtime ships a sink for this target's system tracer (see platformTraceSink). Backends in separate artifacts, such as :runtime-tracing, do not count.

Link copied to clipboard

run events carry a real ThreadInfo on this target.

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun toString(): String