Skip to content
RzR edited this page Apr 20, 2026 · 2 revisions

RzR.DataVigil Wiki

Welcome to the DataVigil wiki. This is a .NET audit trail library that plugs into Entity Framework Core and tracks who changed what, when, and why - with built-in GDPR support.

If you're just getting started, the Getting Started page is the fastest path to a working setup. For everyone else, here's what this wiki covers.


What is DataVigil?

DataVigil is a set of NuGet packages that automatically capture create, update, and delete operations from EF Core's change tracker. You can also opt in to read (SELECT) auditing if your compliance requirements call for it. Every audit record gets enriched with user identity, IP address, correlation/trace IDs, and a timestamp - then persisted to whichever storage backend you pick.

On the GDPR side, you can define field-level rules that mask, hash, anonymize, or exclude sensitive properties before they're ever written. There's a separate retrieval layer too, so different users see different levels of detail based on their roles and claims. And when somebody invokes their right-to-erasure, one call scrubs their personal data from the entire audit trail while keeping the structural records intact.


Wiki Pages

Page What's in it
Getting Started Install the packages, wire up DI, see audit records flowing in under 5 minutes
Architecture How the pieces fit together - package dependency graph, data flow, interceptor pipeline
Configuration Reference Every option on AuditTrailOptions, EfCoreAuditOptions, StorageOptions, GdprOptions
EF Core Integration Interceptors, change tracker, read auditing, entity marking with IAuditable / IAuditableEntity
ASP.NET Core Integration User resolution from HttpContext, correlation headers, read-flush middleware
Storage Providers SQL Server, PostgreSQL, MongoDB, File - setup, migrations, differences
GDPR Compliance Storage policies, retrieval policies, right-to-erasure, GdprStorageState lifecycle
Advanced Topics Worker services, manual audit entries, custom resolvers, data retention, entity exclusions
Data Model AuditTransaction, AuditEntry, AuditEntryProperty - schema, relationships, indexes
API Reference Public interfaces, enums, models, extension methods - the full surface area
Samples Walk-through of the included sample projects
FAQ & Troubleshooting Common issues and how to fix them

Packages at a Glance

Package Purpose Required?
RzR.DataVigil.Abstractions Interfaces, enums, models Pulled in by Core
RzR.DataVigil.Core Pipeline, GDPR processor, options, resolvers Always
RzR.DataVigil.EFCore SaveChanges + command interceptors If using EF Core
RzR.DataVigil.AspNetCore HttpContext-based user/correlation resolvers If hosting in ASP.NET Core
RzR.DataVigil.Storage.EfSqlServer SQL Server audit store Pick one storage
RzR.DataVigil.Storage.EfPostgreSql PostgreSQL audit store Pick one storage
RzR.DataVigil.Storage.EfMongoDb MongoDB audit store Pick one storage
RzR.DataVigil.Storage.File JSON file audit store Pick one storage

All library packages target .NET Standard 2.1 (except MongoDB which targets net8.0). EF Core 5.0+ is the minimum for the interceptor layer.


Quick Links

Clone this wiki locally