Usage Notes
Executions can be subscribed to using the ExecutionSubscriber interface.
+ One reason to subscribe is to persist these interaction/executions. This supports several use cases:
-
they enable profiling of the running application (which actions are invoked then most often, what is their response time)
-
if auditing is configured (using EntityPropertyChangeSubscriber), they provide better audit information, since the parent Interaction captures the 'cause' of an interaction and can be correlated to the audit records (the "effect" of the interaction) by way of the interactionId that both share.
See also
-
Execution Log extension
which subscribes to
Executions and simply persists as ExecutionLogEntrys. -
Execution Outbox extension
which subscribes to
Executions and (similarly) persists as ExecutionOutboxEntrys. However, the outbox extension also provides a REST API which allows outbox entries to be queried and consumed, in other words providing an implementation of the Outbox pattern.