JG.AuditKit
1.0.0
dotnet add package JG.AuditKit --version 1.0.0
NuGet\Install-Package JG.AuditKit -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="JG.AuditKit" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="JG.AuditKit" Version="1.0.0" />
<PackageReference Include="JG.AuditKit" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add JG.AuditKit --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: JG.AuditKit, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package JG.AuditKit@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=JG.AuditKit&version=1.0.0
#tool nuget:?package=JG.AuditKit&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
dotnet-audit-kit
Immutable audit logging for .NET 8 applications. Record who did what, when, where, and why with tamper-evident hash chains, filter pipelines, and non-blocking sink dispatch.
Features
- Immutable
AuditEntrymodel - SHA-256 hash chaining with configurable seed
- Built-in sinks:
ConsoleSink,FileSink,InMemorySink - Pluggable
IAuditSinkandIAuditFilter - Async
Channel<T>dispatch pipeline that keeps request paths non-blocking - Sink failure isolation (one sink failure does not stop other sinks)
- Hash chain verification API
- DI extensions:
AddAuditKit,AddAuditSink<T>,AddAuditFilter<T>
Installation
dotnet add package JG.AuditKit
Quick Start
using JG.AuditKit;
using JG.AuditKit.Abstractions;
using JG.AuditKit.Sinks;
builder.Services
.AddAuditKit(options =>
{
options.DefaultSinkTypes.Clear();
options.AddDefaultSink<FileSink>();
options.EnableHashChaining = true;
options.HashSeed = "my-seed";
options.FileSink.Path = "audit.jsonl";
options.FileSink.RollDaily = true;
})
.AddAuditFilter<MyAuditFilter>();
// ...
var auditLog = app.Services.GetRequiredService<IAuditLog>();
await auditLog.WriteAsync(new AuditEntry(
actor: "user:42",
action: "write.order",
resource: "orders/1001",
timestamp: DateTimeOffset.UtcNow,
correlationId: "corr-123",
metadata: new Dictionary<string, string?>
{
["ip"] = "10.0.0.10",
["reason"] = "user-update"
}));
Documentation
License
Licensed under the Apache License 2.0. See LICENSE for details.
Ready to get started? Install via NuGet and check out the API reference.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 69 | 3/5/2026 |