Feature madness

Choose your favorite poison below.

Getting started

Download our nuget package OneTrueError.Mvc5 and add two lines of code to your application:

public class MvcApplication : System.Web.HttpApplication
{
    protected void Application_Start()
    {
        OneTrue.Credentials("YourAppKey", "YourSharedSecret");
        OneTrue.Configuration.CatchMvcExceptions();
                            
        //the standard stuff.
    }
}

Once done, all unhandled exceptions will be uploaded to our service.

Possible customizations

The following features can be customized easily:

  • Show custom error pages (one line of code)
  • Allow user feedback (one line of code)
  • Allow user to track bug fixing progress (one line of code)
  • Allow user to decide if the error report should be uploaded (one line of code)

Collected information (MVC specific)

When we detect a new exception, the following information is automatically included in the error report:

  • Route data (for the current route)
  • TempData
  • ViewBag
  • Request/Response
  • Querystring
  • Session variables
  • Cookies

Getting started

Download our nuget package OneTrueError.Wcf and add two lines of code to your application:

[OneTrueErrorHandler(IncludeExceptionMessage = false)]
public class OrderService : IOrderService
{
    //Your service methods
}

Once done, all unhandled exceptions will be uploaded to our service.

Possible customizations

The following features can be customized easily:

  • Custom error message (in the Fault that is generated by OneTrueError)
  • Custom fault

Collected information (WCF specific)

When we detect a new exception, the following information is automatically included in the error report:

  • Operation context
  • Inbound WCF message that caused the exception
  • Request header
  • Request properties

Getting started

Download our nuget package OneTrueError.WinForms and add two lines of code to your application:

public class Program
{
    public static void Main()
    {
        OneTrue.Credentials("YourAppKey", "YourSharedSecret");
        OneTrue.Configuration.CatchWinFormsExceptions();
                            
        //the standard stuff.
    }
}

Once done, all unhandled exceptions will be uploaded to our service.

Possible customizations

The following features can be customized easily:

  • Show custom error form (one line of code)
  • Allow user feedback (one line of code)
  • Allow user to track bug fixing progress (one line of code)
  • Allow user to decide if the error report should be uploaded (one line of code)

Collected information (WinForms/WPF specific)

When we detect a new exception, the following information is automatically included in the error report:

  • Screen-shots of all open forms
  • Properties for all open forms (like text in text boxes etc)

Getting started

You can of course manually report exceptions in any type of .NET application. Simply start by downloading our base nuget package OneTrueError and then activate it by adding the following line to your startup code:

OneTrue.Credentials("YourAppKey", "YourSharedSecret");

Once done you report exceptions by invoking the OneTrue.Report() method:

try
{
    var service = new OrderService();
    service.Upgrade(userId, orderId);
}
catch (Exception error)
{
    OneTrue.Report(error);
}

The error will be uploaded as soon as there is an Internet connection available. The library detects corporate proxies and uses them by default.

Attaching context data

The exception alone might not be enough information to be able to understand why it was thrown. We allow you to attach a model to each exception report.

try
{
    var service = new OrderService();
    service.Upgrade(userId, orderId);
}
catch (Exception error)
{
    var model = new MyViewModel
        {
            UserId = userId,
            OrderId = "38833"
        };
    OneTrue.Report(error, model);
}

.. but we also allow you to use anonymous objects:

try
{
    var service = new OrderService();
    service.Upgrade(userId, orderId);
}
catch (Exception error)
{
    OneTrue.Report(error, new { UserId = userId, OrderId = orderId });
}

Features for all .NET libraries

The following features are available in all our libraries.

Features as images

Click on the images to learn more about our features.

The dashboard gives you a quick summary over how the applications are performing. The app overview shows how a specific application is performing. You can enable an error dialog which allows the user to enter an error description. An incident contains all reports for the same exception. The context data for all reports are analysed and grouped. The report contains information from a specific exception report.