Skip to content

Observability

Category: Observability

Source: observability.dart

Classes

ObservabilityEvent

Constructor

dart
ObservabilityEvent(
    this.name, {
    DateTime? timestamp,
    Map<String, dynamic>? attributes,
  })

Properties

PropertyTypeDescription
nameString
timestampDateTime
attributesMap&lt;String, dynamic&gt;

ObservabilitySpan

A span representing a unit of work in the observability trace.

Constructor

dart
ObservabilitySpan({
    required this.name,
    required this.kind,
    String? traceId,
    this.parentSpanId,
    Map<String, dynamic>? attributes,
  })

Properties

PropertyTypeDescription
nameString
kindString
traceIdString
spanIdString
parentSpanIdString?
attributesMap&lt;String, dynamic&gt;
eventsList&lt;ObservabilityEvent&gt;
statusCodeString
statusMessageString?
startDateTime get
endTimeDateTime? get
durationDuration get
startDateTime get
endTimeDateTime? get
durationDuration get

Methods

void addEvent(String name, {Map&lt;String, dynamic&gt;? attributes})
void setStatus(String code, {String? message})
void end({Map&lt;String, dynamic&gt;? extra})

abstract ObservabilitySink

A sink that receives completed spans for export to an observability backend.

Methods

void onSpan(ObservabilitySpan span)

Receives a completed [span] for processing.

Future&lt;void&gt; flush()

Flushes any buffered spans to the backend.

Future&lt;void&gt; close()

Closes this sink, releasing any held resources.

Observability

Central coordinator for tracing spans and routing them to registered sinks.

Constructor

dart
Observability({required this._debugController})

Properties

PropertyTypeDescription
activeSpanObservabilitySpan?
debugEnabledbool get
sinkCountint get
autoFlushEnabledbool get
debugEnabledbool get
sinkCountint get
autoFlushEnabledbool get

Methods

void addSink(ObservabilitySink sink)

Registers a [sink] to receive completed spans.

`ObservabilitySpan startSpan(
String name, {
String kind = 'internal',
Map&lt;String, dynamic&gt;? attributes,
ObservabilitySpan? parent,

})`

Starts a new span with the given [name].

void endSpan(ObservabilitySpan span, {Map&lt;String, dynamic&gt;? extra})

Ends a [span] and forwards it to all registered sinks.

void startAutoFlush(Duration interval)
Future&lt;void&gt; flush()

Flushes all registered sinks.

Future&lt;void&gt; close()

Closes all registered sinks.

Released under the MIT License.