Class TracingEventStorageEngine

java.lang.Object
org.axonframework.eventsourcing.eventstore.tracing.TracingEventStorageEngine
All Implemented Interfaces:
DescribableComponent, EventStorageEngine

@Internal public final class TracingEventStorageEngine extends Object implements EventStorageEngine
Tracing decorator for an EventStorageEngine. It traces the complete logical append operation, beginning when EventStorageEngine.appendEvents(AppendCondition, ProcessingContext, List) is invoked and ending when the returned EventStorageEngine.AppendTransaction reaches a terminal outcome through EventStorageEngine.AppendTransaction.afterCommit(Object), EventStorageEngine.AppendTransaction.rollback(), or a failure.

When a ProcessingContext is supplied, the span additionally ends with the context as a leak backstop, so an abandoned transaction cannot leave it open. Without a context there is no lifecycle to attach that backstop to: the span then ends only through the transaction's terminal operations, and a caller that abandons such a transaction without committing or rolling back leaves the span unfinished.

Read and token operations are delegated unchanged. The decorator is installed by the event-sourcing tracing configuration and is not intended for direct application use.

Since:
5.3.0
Author:
Mateusz Nowak