elsa-core/src/modules/Elsa.Common
raymonddenhaan c413f210a9
Add activity execution log sink (#5833)
* Add activity execution log sink

Introduced an interface `IActivityExecutionLogSink` for storing workflow execution log records and implemented it as `StoreActivityExecutionLogSink`. This centralizes and streamlines the handling of persisting execution logs into the workflow's runtime, thus making the process more modular and maintainable. The `PersistActivityExecutionLogMiddleware` has also been refactored to use this sink, replacing the direct usage of the workflow execution log store.

* Refactor logging interfaces and implementations

Replaced specific logging interfaces and implementations with generic ones. The individual interfaces for workflow and activity execution logging have been replaced with a single ILogRecordExtractor and ILogRecordSink interface. Specific implementations have been adjusted to use these new interfaces. This allows for greater flexibility and reuse of logging code.

* Introduce ILogRecordStore interface

The `ILogRecordStore` interface has been introduced to provide a centralized place for handling log records. Both `IActivityExecutionStore` and `IWorkflowExecutionLogStore` have been updated to inherit from this new interface. As a result of this change, the `SaveManyAsync` methods in these two interfaces have been removed to avoid redundancy.
2024-07-24 22:30:14 +02:00
..
Contracts Add activity execution log sink (#5833) 2024-07-24 22:30:14 +02:00
Converters Add DecimalJsonConverter and update usage 2024-03-14 09:59:22 +01:00
DistributedLocks/Noop Add new docker-compose files, new activities and services 2024-03-24 20:28:19 +01:00
Entities Dapper persistence provider (#4109) 2023-06-06 20:49:14 +02:00
Exceptions Webhooks (#3598) 2023-01-05 13:55:08 +01:00
Extensions Add PropertyBag for non-polymorphic data transfer between server and client (#5735) 2024-07-10 10:29:45 +02:00
Features Refactor scheduling and system clock configurations 2024-07-18 16:00:49 +02:00
Models Add PropertyBag for non-polymorphic data transfer between server and client (#5735) 2024-07-10 10:29:45 +02:00
Serialization Refactor serializer options usage and enhance caching in workflow serialization (#5275) 2024-04-25 11:42:48 +02:00
Services Add caching to workflow runtime and workflow management stores (#5174) 2024-04-10 11:51:40 +02:00
Elsa.Common.csproj Add caching to workflow runtime and workflow management stores (#5174) 2024-04-10 11:51:40 +02:00
FodyWeavers.xml Prepare projects for packaging 2022-11-03 21:40:23 +01:00