Entity Framework
Sentry provides an integration with EntityFramework
through the of the Sentry.EntityFramework NuGet package.
Looking for
EntityFramework Core
? That integration is achieved through the Sentry.Extensions.Logging package.
Installation
Copied
Install-Package Sentry.EntityFramework -Version 4.9.0
This package extends Sentry
main SDK. That means that besides the EF features, through this package you'll also get access to all API and features available in the main Sentry
SDK.
Features
- Queries as breadcrumbs
- Validation errors
All queries executed are added as breadcrumbs and are sent with any event which happens on the same scope. Besides that, validation errors are also included as Extra
.
Configuration
Add the Entity Framework 6 support to your project in one step:
- When initializing the SDK, call the extension method
AddEntityFramework()
onSentryOptions
. This will register all error processors to extract extra data, such as validation errors, from the exceptions thrown by Entity Framework.
Example configuration
For example, configuring an ASP.NET app with global.asax:
global.asax
Copied
using System;
using System.Configuration;
using Sentry;
public class MvcApplication : System.Web.HttpApplication
{
private IDisposable _sentrySdk;
protected void Application_Start()
{
_sentrySdk = SentrySdk.Init(o =>
{
// We store the DSN inside Web.config
o.Dsn = ConfigurationManager.AppSettings["SentryDsn"];
// Add the EntityFramework integration
o.AddEntityFramework();
});
}
// Global error catcher
protected void Application_Error()
{
var exception = Server.GetLastError();
SentrySdk.CaptureException(exception);
}
public override void Dispose()
{
_sentrySdk.Dispose();
base.Dispose();
}
}
Sample
Check out a complete working sample to see it in action.