For the complete documentation index, see llms.txt. This page is also available as Markdown.

MyDotnetCrasher (.NET)

MyDotnetCrasher is a sample .NET 8 console application that demonstrates BugSplat crash reporting. It triggers a variety of .NET exceptions, captures them, and uploads the resulting crash reports so you can see how BugSplat symbolicates and groups them, without changing any of your own code.

Under the hood it uses BugSplatDotNetStandard, the same library you'd add to your own application. For a full integration guide, see .NET Standard.

Prerequisites 🚦

1. Clone the sample

git clone https://github.com/BugSplat-Git/my-dotnet-crasher.git
cd my-dotnet-crasher

2. Configure your BugSplat database

Update the credentials in two places so reports and symbols land in your database.

In Program.cs, set the database, application, and version on the Reporter:

private static Reporter reporter = new Reporter("your-database", "MyDotnetCrasher", "1.0.0");

In MyDotnetCrasher.csproj, update the symbol upload step in the UploadSymbols target so your crashes include file names and line numbers:

<Exec Command=".\Tools\symbol-upload-windows.exe -b your-database -a MyDotnetCrasher -v 1.0.0 -u your-email@example.com -p your-password -f &quot;**/*.{pdb,exe,dll}&quot; -d &quot;./bin&quot;"/>

Prefer not to keep a password in your build? symbol-upload also authenticates with OAuth client credentials, which you can create on the Integrations page. See working with symbol files for details.

3. Build

Building restores BugSplatDotNetStandard, compiles the app, and automatically uploads its debug symbols (PDBs) to BugSplat.

4. Post a test crash

Run the app with a crash type to generate a report:

The app catches the exception with a global handler, generates a Windows minidump, uploads the crash to BugSplat, and exits.

5. View the crash ✅

Open the Crashes page and select your database. Click a report's ID to see the symbolicated call stack (with file names and line numbers from the uploaded symbols), along with the exception message, the minidump, and system information. BugSplat automatically groups similar crashes so you can prioritize by impact.

Not seeing file names and line numbers? Confirm the symbol upload completed during dotnet build, and that the database, application, and version match between Program.cs and the symbol-upload command.

Last updated

Was this helpful?