Raygun's Crash Reporting extension for Blazor WebAssembly
$ dotnet add package Raygun.Blazor.WebAssemblyRaygun provider for Blazor WebAssembly.
Full usage instructions can be found in the Raygun.Blazor package page.
Install the packages Raygun.Blazor and Raygun.Blazor.WebAssembly from NuGet.
Add a scoped RaygunBlazorClient by calling to UseRaygunBlazor() with your WebAssemblyHostBuilder builder.
var builder = WebAssemblyHostBuilder.CreateDefault(args);
// ...
builder.UseRaygunBlazor();
RaygunBlazorClientYou can access the RaygunBlazorClient using @inject in your code:
@inject RaygunBlazorClient RaygunClient
...
RaygunClient.RecordExceptionAsync(...)
Use RaygunErrorBoundary to wrap components and capture unhandled exceptions automatically.
For example, in your MainLayout.razor:
@using Raygun.Blazor.WebAssembly.Controls
...
<article class="content px-4">
<RaygunErrorBoundary>
@Body
</RaygunErrorBoundary>
</article>
You can set ShowExceptionsUI="true to display a custom error message:
<RaygunErrorBoundary ShowExceptionUI="true">
<ChildContent>
@Body
</ChildContent>
<ErrorContent>
<p class="errorUI">👾 Error captured by Raygun!</p>
</ErrorContent>
</RaygunErrorBoundary>
Example project is located in src/Raygun.Samples.Blazor.WebAssembly