Telemetry
Telemetry
OpenTelemetry
Estoria components can be instrumented with OpenTelemetry to provide tracing and metrics. The estoria-contrib repository provides OTEL wrappers for event stores, aggregate stores, and snapshot stores. A complete runnable example can be found in estoria-examples.
import (
otelaggregatestore "github.com/go-estoria/estoria-contrib/opentelemetry/aggregatestore"
oteleventstore "github.com/go-estoria/estoria-contrib/opentelemetry/eventstore"
otelsnapshotstore "github.com/go-estoria/estoria-contrib/opentelemetry/snapshotstore"
)
// instrument an event store
eventStore, _err_ = oteleventstore.NewInstrumentedStore(eventStore)
// instrument an aggregate store
aggregateStore, _err_ = otelaggregatestore.NewInstrumentedStore(aggregateStore)
// instrument a snapshot store
snapshotStore, _err_ = otelsnapshotstore.NewInstrumentedStore(snapshotStore)
Other Telemetry Providers
Telemetry Provider | Driver | Components Supported | Details |
---|---|---|---|
DataDog | https://github.com/DataDog/dd-trace-go | Event Store, Aggregate Store, Snapshot Store | Uses DataDog APM for tracing and metrics. |