An extensible framework to audit executing operations in .NET and .NET Core, generating detailed audit logs with evidence for reconstruction.
Audit.NET is an extensible framework for generating detailed audit logs in .NET and .NET Core applications. It captures environmental data, execution details, and object state changes to provide evidence for reconstructing and examining operations. The framework solves the need for comprehensive, customizable auditing across various .NET technologies without intrusive code changes.
.NET developers and teams building applications that require detailed audit trails for compliance, debugging, or monitoring purposes, especially in domains like finance, healthcare, or enterprise systems.
Developers choose Audit.NET for its extensive extensibility, broad integration with .NET ecosystems (Entity Framework, WebAPI, Azure, etc.), and flexible storage options. Its non-intrusive design and configurable policies make it easy to add robust auditing to existing applications.
An extensible framework to audit executing operations in .NET
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Central AuditScope and AuditEvent objects with custom data providers and wrappers allow deep customization, enabling support for diverse storage backends and resilience patterns like Polly.
Includes ready-made extensions for Entity Framework, WebAPI, Azure Functions, and more, providing seamless auditing without manual instrumentation for common .NET technologies.
Supports output to JSON files, SQL/NoSQL databases, Azure services, and others via data providers, making it easy to integrate with existing infrastructure.
Offers multiple event creation policies like Insert on End and Manual, giving fine-grained control over when audit events are saved to balance performance and completeness.
Configuring data providers, extensions, and custom actions can be involved, especially for teams new to the framework or integrating multiple systems.
Capturing detailed object states, environmental data, and serialization for storage adds latency, which may impact high-throughput applications.
Discontinued support for older .NET frameworks in version 23.0.0 forces upgrades for teams on unsupported versions, as noted in the README.