alindgren / Fundraise

A .NET core library for building fundraising applications
MIT License
17 stars 11 forks source link

Add an event log for tracking changes #1

Open alindgren opened 7 years ago

alindgren commented 7 years ago

The original idea was to track changes to donations but maybe could be done in a more generic way for changes to all entities -- perhaps loosely model it after Stripe's events.

alindgren commented 6 years ago

Should consider using EventStore (https://eventstore.org/) for logging event history.

Per post from Jet Tech (https://web.archive.org/web/20170813110455/https://tech.jet.com/blog/2016/09-07-event-sourcing-awesome/):

At Jet, we use event sourcing as our main log of truth for historical transactions. Most teams use Event Store to store the events that are generated by their systems. The Event Store log is an append-only log. All events that were written to the log are immutable, and changes to a stream are handled by appending new events to the log that contains an updated state for the stream.