Skip to content

BugSplat-Git/bugsplat-dotnet-standard

Repository files navigation

BugSplat Banner Image

BugSplat

Crash and error reporting built for busy developers.

Follow @bugsplatco on Twitter Join BugSplat on Discord

πŸ‘‹ Introduction

BugSplatDotNetStandard allows you to capture and track exceptions on all platforms that support .NET Standard 2.0. This includes, .NET Core, Universal Windows Platform, Mono and more! Before continuing with the tutorial please make sure you have completed the following checklist:

You can also view the MyUwpCrasher repo which contains a sample application with BugSplatDotNetStandard installed and configured to post exceptions to BugSplat.

πŸ— Installation

Install the BugSplatDotNetStandard NuGet package.

Install-Package BugSplatDotNetStandard

βš™οΈ Configuration

After you've installed the NuGet package, add a using statement for the BugSplatDotNetStandard namespace.

using BugSplatDotNetStandard;

Create a new instance of BugSplat providing it your database, application, and version. It's best to do this at the entry point of your application. Several defaults can be provided to BugSplat. You can provide default values for things such as description, email, key, notes, user, file attachments, and attributes.

var bugsplat = new BugSplat(database, application, version);
bugsplat.Attachments.Add(new FileInfo("/path/to/attachment.txt"));
bugsplat.Description = "the default description";
bugsplat.Email = "fred@bugsplat.com";
bugsplat.Key = "the key!";
bugsplat.Notes = "the notes!";
bugsplat.User = "Fred";
bugsplat.Attributes.Add("key", "value");

The Post method can be used to send Exception objects to BugSplat.

try
{
    throw new Exception("BugSplat rocks!");
}
catch(Exception ex)
{
    await bugsplat.Post(exception);
}

Additionally, Post can be used to upload minidumps to BugSplat.

await bugsplat.Post(new FileInfo("/path/to/minidump.dmp"));

The default values for description, email, key and user can be overridden in the call to Post. Additional attachments can also be specified in the call to Post. If BugSplat can't read an attachment (e.g. the file is in use), it will be skipped. Please note that the total size of the Post body and all attachments is limited to 20MB by default.

var options = new ExceptionPostOptions()
{
    Description = "BugSplat rocks!",
    Email = "fred@bugsplat.com",
    User = "Fred",
    Key = "the key!"
};
options.Attachments.Add(new FileInfo("/path/to/attachment2.txt"));

await bugsplat.Post(ex, options);

βœ… Verification

Once you've generated an error, navigate to the BugSplat Dashboard and ensure you have to correct database selected in the dropdown menu. You should see a new crash report under the Recent Crashes section:

BugSplat Dashboard Page

Click the link in the ID column to see details about the crash:

BugSplat Crash Page

That’s it! Your application is now configured to post crash reports to BugSplat.

πŸ‘· Support

If you have any additional questions, please email or support team, join us on Discord, or reach out via the chat in our web application.