ErrorDock.Extensions.Logging 0.1.0-rc.1

This is a prerelease version of ErrorDock.Extensions.Logging.
dotnet add package ErrorDock.Extensions.Logging --version 0.1.0-rc.1
                    
NuGet\Install-Package ErrorDock.Extensions.Logging -Version 0.1.0-rc.1
                    
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="ErrorDock.Extensions.Logging" Version="0.1.0-rc.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ErrorDock.Extensions.Logging" Version="0.1.0-rc.1" />
                    
Directory.Packages.props
<PackageReference Include="ErrorDock.Extensions.Logging" />
                    
Project file
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 ErrorDock.Extensions.Logging --version 0.1.0-rc.1
                    
#r "nuget: ErrorDock.Extensions.Logging, 0.1.0-rc.1"
                    
#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 ErrorDock.Extensions.Logging@0.1.0-rc.1
                    
#: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=ErrorDock.Extensions.Logging&version=0.1.0-rc.1&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=ErrorDock.Extensions.Logging&version=0.1.0-rc.1&prerelease
                    
Install as a Cake Tool

ErrorDock.Extensions.Logging

ErrorDock for applications built on the .NET generic host — worker services, console applications, Windows Services. Adds AddErrorDock() and an ILogger provider, and sends to ErrorDock.

dotnet add package ErrorDock.Extensions.Logging

Building an ASP.NET Core application? Install ErrorDock.AspNetCore instead — it depends on this package and adds the request middleware. Building something with no host at all? ErrorDock.Core has a static entry point for that.

Getting started

using ErrorDock;

var builder = Host.CreateApplicationBuilder(args);

builder.Services.AddErrorDock(options =>
{
    options.ApiKey = "ed_live_…";
    options.Endpoint = "https://api.errordock.com";
    options.Release = typeof(Program).Assembly.GetName().Version?.ToString();
});

// Opt-in, and Warning and above by default. A service that shipped its Information logs
// would spend a monthly quota in an afternoon.
builder.Logging.AddErrorDock();

var host = builder.Build();

await host.RunAsync();

Environment defaults to the host environment name, so it is usually one line less than it looks. Configuration can come from appsettings.json instead, under the ErrorDock section:

{
  "ErrorDock": {
    "ApiKey": "ed_live_…",
    "Endpoint": "https://api.errordock.com",
    "MinimumLogLevel": "Warning"
  }
}

Use a server key (ed_live_) for anything that runs on hardware you control. For an application you ship to somebody else's machine, use an application key (ed_app_) — a secret inside an installer is a secret your customers hold.

Reporting

Inject IErrorDockClient wherever you need it:

public sealed class NightlyExport(IErrorDockClient errorDock)
{
    public async Task RunAsync(CancellationToken cancellationToken)
    {
        await errorDock.RunFeatureAsync("nightly-export", () => _exporter.RunAsync(cancellationToken));
    }
}

RunFeatureAsync records the execution, marks it failed if the task faults, and rethrows. Use it, not RunFeature, for anything that returns a Task: the synchronous overload would record the moment the task was created — a duration of nothing and an outcome of Ok whatever happened afterwards. That produces the denominator as well as the numerator, which is what makes a feature error rate a number rather than a guess.

Shutdown

The host stops the SDK for you: the background dispatcher flushes once more when the application is shutting down, and whatever it cannot deliver is written to the offline queue for the next start. A worker restarted mid-deploy no longer loses the events that were in flight.

What it guarantees

Everything ErrorDock.Core guarantees — it never throws, never blocks, gives up on purpose, and follows the dashboard. This package adds the host wiring and takes abstractions only (Microsoft.Extensions.*.Abstractions plus Microsoft.Extensions.Http), so it never decides which version of the host you run.

Licence

MIT. The ErrorDock service itself is proprietary; this SDK is not.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on ErrorDock.Extensions.Logging:

Package Downloads
ErrorDock.AspNetCore

ErrorDock SDK for ASP.NET Core: unhandled exceptions, logs, features and requests.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-rc.1 188 9/9/2026