Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Airbrake Notifier for .NET
C# ASP
Branch: master
Pull request Compare This branch is 59 commits behind airbrake:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.nuget
SampleWeb
SharpBrake
Tests
.gitignore
README.md
ReSharper.5.xml
SharpBrake.2008.sln
SharpBrake.2008.sln.DotSettings
SharpBrake.2010.5.1.ReSharper
SharpBrake.2010.6.1.ReSharper
SharpBrake.2010.sln
SharpBrake.2010.sln.DotSettings

README.md

SharpBrake

SharpBrake is a .NET library for use with the Airbrake exception reporting service by Thoughtbot. Airbrake allows you to easily track and get notification about exceptions that occur on your site.

The SharpBrake library can be used in two ways:

  1. You can programmatically report exceptions with the extension method SendToAirbrake() in a try/catch block.
  2. You can configure the HttpModule in web.config, which will catch any unhandled exceptions on your site and report them to Airbrake.

Usage

First, you need to get the library down from the internets and onto your local hard drive. The preferred method to accomplish this is to install NuGet and then via any of its many interfaces install the SharpBrake Package.

If you want to build the library yourself, you can fork or clone it and build it with Visual Studio (2008 or 2010; both are supported). Drop the files SharpBrake.dll and Common.Logging.dll into your application's bin directory and you're almost good to go.

Once SharpBrake is downloaded, built, installed or otherwise resides in your application's bin directory, you'll need to edit your application's .config file to include your API key for Airbrake as well as an environment name:

<appSettings>
    <add key="Airbrake.ApiKey" value="1234567890abcdefg" />
    <add key="Airbrake.Environment" value="Whatever" />
</appSettings>

To programmatically report exceptions, all you need to do is ensure you've included the SharpBrake namespace, and then call the SendToAirbrake() extension method on the exception. For example:

using SharpBrake;

try
{
    // some code
}
catch (Exception exception)
{
    // Oh noes!
    exception.SendToAirbrake();
}

To use the HttpModule, you will just need to add it as an HttpHandler within your web.config:

<httpModules>
    <add name="Airbrake" type="SharpBrake.NotifierHttpModule, SharpBrake"/>
</httpModules>

TODO

There are some important things to do on the HttpModule still. Most importantly, it will be incredibly verbose on its exception handling. In .NET, a 404 is considered an exception, so it will catch, report, and subsequently notify you of any time someone tries to access a URL that doesn't exist.

To circumvent this, plan on adding the ability to set a series of patterns that you can use to exclude exceptions based on exception type, part of the message, or something along those lines.

Something went wrong with that request. Please try again.