RecurringBugCatcher 1.0.1
See the version list below for details.
dotnet add package RecurringBugCatcher --version 1.0.1
NuGet\Install-Package RecurringBugCatcher -Version 1.0.1
<PackageReference Include="RecurringBugCatcher" Version="1.0.1" />
paket add RecurringBugCatcher --version 1.0.1
#r "nuget: RecurringBugCatcher, 1.0.1"
// Install RecurringBugCatcher as a Cake Addin #addin nuget:?package=RecurringBugCatcher&version=1.0.1 // Install RecurringBugCatcher as a Cake Tool #tool nuget:?package=RecurringBugCatcher&version=1.0.1
Recurring Bug Catcher
What does it do?
Sometimes, applications throw exceptions and whilst these are us usually handled and logged, they may go unnoticed for a period of time. Unnoticed exceptions can sometimes hide a problem that whilst not immediately apparent, could have significant negative impact on the software.
Recurring Bug Catcher monitors any handled exception you tell it to track and when a particular exception occurs multiple times, bug catcher will notify any one subscribed by email(subscribers are usually devs or support people). When the email notification is received, the developer can then go and consult the application's exception log to investigate, assess and troubleshoot as required.
The purpose of Recurring Bug Catcher is to reveal unnoticed recurring exceptions early in the piece to give developers a chance to address issues before users are impacted or before users become aware of the issue.
How to use it?
Add the NuGet package to any project of your choice.
C# Example
// Initialise the manager
var bugCatcherManager = BugCatcherManager.Get;
// Configure the SMTP parameters for sending a notification when the same exception keeps occurring
bugCatcherManager.ConfigureSmtp(
smtpHost: "SmtpHostAdress",
fromEmailAddress: "bugcatcher-notification@domain.com",
toEmailAddress: "someone@domain.com",
smtpPort: 25);
// Initialise the tracker
var bugCatcherApi = bugCatcherManager.BugCatcherApi();
// Example usage
// Tell Recurring Bug Catcher to track exceptions in catch blocks
try
{
// Do something
}
catch (Exception exception)
{
// 1. Log using your usual logging library
// This log is what you would consult if you receive an email notification from Recurring Bug Catcher
myUsualLogger.Error($"{exception.Message}{exception.Exception});
// 2. Tell bug tracker to monitor this exception
// If same or similar text generated by $"{exception.Message}{exception.Exception}"
// occurs multiple times (in this example 5 times) then a notification is generated
BugCatcherApi.MonitorException($"{exception.Message}{exception.Exception}", threshold: 5);
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net461 is compatible. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
- EntityFramework (>= 6.2.0)
- FuzzyString (>= 1.0.0)
- log4net (>= 2.0.8)
- Sqlite.Interop.Net46.x64 (= 1.0.109)
- System.Data.SQLite (= 1.0.109.2)
- System.Data.SQLite.Core (= 1.0.109.2)
- System.Data.SQLite.EF6 (= 1.0.109)
- System.Data.SQLite.Linq (= 1.0.109)
- Unity (>= 5.7.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Initial publication