HttpInspector.AspNetCore
1.4.0
See the version list below for details.
dotnet add package HttpInspector.AspNetCore --version 1.4.0
NuGet\Install-Package HttpInspector.AspNetCore -Version 1.4.0
<PackageReference Include="HttpInspector.AspNetCore" Version="1.4.0" />
<PackageVersion Include="HttpInspector.AspNetCore" Version="1.4.0" />
<PackageReference Include="HttpInspector.AspNetCore" />
paket add HttpInspector.AspNetCore --version 1.4.0
#r "nuget: HttpInspector.AspNetCore, 1.4.0"
#:package HttpInspector.AspNetCore@1.4.0
#addin nuget:?package=HttpInspector.AspNetCore&version=1.4.0
#tool nuget:?package=HttpInspector.AspNetCore&version=1.4.0
HttpInspector.AspNetCore
HttpInspector.AspNetCore turns any ASP.NET Core app into its own request/response inspector. Drop it in, capture structured JSON logs (headers, bodies, timings, correlation IDs), and browse traffic through a zero-config dashboard.
- One-line wiring:
AddHttpInspector+UseHttpInspector, no controllers or static files required. - Built-in UI:
/http-inspectorhosts an auto-refreshing grid with filters, status coloring, and paired request/response views. - Pluggable storage: ships with a JSONL file store, but you can swap in your own
IHttpInspectorStore. - Production-friendly: path filters, header redaction, optional auth, and SourceLink-enabled NuGet artifacts.
NuGet package: https://www.nuget.org/packages/HttpInspector.AspNetCore/
Quick Start
var builder = WebApplication.CreateBuilder(args);
// Register HTTP inspector dependecies 👇
#if DEBUG
builder.Services.AddHttpInspector();
#endif
var app = builder.Build();
// Enable it as part of the ASP.NET Core pipeline 👇
#if DEBUG
app.UseHttpInspector();
#endif
app.Run();
That's it! You can now visit /http-inspector to open the UI or GET /http-inspector/stream?since=<timestamp> for raw JSON events.
Configuring log retention
Configure rolling files without touching DI by passing a lambda to UseHttpInspector:
app.UseHttpInspector(store =>
{
store.MaxFileSizeBytes = 5 * 1024 * 1024; // 5 MB per file
store.RetainedFileCount = 4; // keep 4 rolled files
store.RetainedDays = 14; // purge anything older than two weeks
});
Leave the lambda out to stick with the built-in defaults.
HttpInspector writes JSONL segments with the entry timestamp baked into each filename (for example httpinspector-log-20250105T173000123Z.jsonl). When you pass a since query value the stream endpoint maps that timestamp directly to the right file and performs a binary search inside the JSONL document, so only the relevant portion of the log is read. You can optionally send an until parameter as well (for example /http-inspector/stream?since=2025-01-01T00:00:00Z&until=2025-01-02T00:00:00Z) to cap the range.
All Requests View
Request details
Project Layout
| Path | Description |
|---|---|
src/HttpInspector.AspNetCore |
Production library: middleware, endpoints, options, store, and embedded UI. |
samples/SampleApp |
Minimal API demonstrating the two-line integration. |
tests/HttpInspector.AspNetCore.Tests |
xUnit/FluentAssertions specs covering options and storage. |
| 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 is compatible. 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. |
-
net8.0
- Microsoft.Extensions.FileProviders.Embedded (>= 8.0.0)
- Microsoft.Extensions.FileSystemGlobbing (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
-
net9.0
- Microsoft.Extensions.FileProviders.Embedded (>= 8.0.0)
- Microsoft.Extensions.FileSystemGlobbing (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.