Feature #40: Exceptionless error reporting
This commit is contained in:
@@ -1,9 +1,13 @@
|
||||
using Disco.Data.Repository;
|
||||
using Disco.Services.Interop.DiscoServices;
|
||||
using Exceptionless;
|
||||
using Exceptionless.Configuration;
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
|
||||
[assembly: Exceptionless("https://errors.discoict.com.au", "c81e644582374f68aaf1fb546e3db0cd")]
|
||||
|
||||
namespace Disco.Web
|
||||
{
|
||||
public static class AppConfig
|
||||
@@ -27,16 +31,19 @@ namespace Disco.Web
|
||||
|
||||
public static void InitalizeCoreEnvironment(DiscoDataContext Database)
|
||||
{
|
||||
ExceptionlessClient.Current.SendingError += Exceptionless_SendingError;
|
||||
|
||||
// Initialize Logging
|
||||
Disco.Services.Logging.LogContext.Initalize(Database, DiscoApplication.SchedulerFactory);
|
||||
|
||||
// Initialize Active Directory Interop
|
||||
Disco.Services.Interop.ActiveDirectory.ActiveDirectory.Initialize(Database);
|
||||
|
||||
// Load Organisation Name
|
||||
DiscoApplication.DeploymentId = Database.DiscoConfiguration.DeploymentId;
|
||||
DiscoApplication.OrganisationName = Database.DiscoConfiguration.OrganisationName;
|
||||
DiscoApplication.MultiSiteMode = Database.DiscoConfiguration.MultiSiteMode;
|
||||
|
||||
// Initialize Active Directory Interop
|
||||
Disco.Services.Interop.ActiveDirectory.ActiveDirectory.Initialize(Database);
|
||||
|
||||
// Setup Global Proxy
|
||||
DiscoApplication.SetGlobalProxy(Database.DiscoConfiguration.ProxyAddress,
|
||||
Database.DiscoConfiguration.ProxyPort,
|
||||
@@ -47,6 +54,14 @@ namespace Disco.Web
|
||||
Disco.Services.Users.UserService.Initialize(Database);
|
||||
}
|
||||
|
||||
static void Exceptionless_SendingError(object sender, ErrorModelEventArgs e)
|
||||
{
|
||||
e.Error.UserName = DiscoApplication.DeploymentId;
|
||||
e.Error.UserDescription = DiscoApplication.OrganisationName;
|
||||
|
||||
e.Error.Tags.Add(string.Concat("v", DiscoApplication.Version));
|
||||
}
|
||||
|
||||
public static void InitalizeNormalEnvironment(DiscoDataContext Database)
|
||||
{
|
||||
InitalizeCoreEnvironment(Database);
|
||||
|
||||
@@ -12,6 +12,7 @@ using Disco.Services.Plugins.Features.UIExtension;
|
||||
using Disco.Services.Plugins.Features.WarrantyProvider;
|
||||
using Disco.Services.Users;
|
||||
using Disco.Services.Web;
|
||||
using Exceptionless;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -544,6 +545,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogWarrantyError, m);
|
||||
throw;
|
||||
@@ -558,6 +560,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogWarrantyError, m);
|
||||
}
|
||||
@@ -580,6 +583,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogWarrantyError, m);
|
||||
throw;
|
||||
@@ -624,6 +628,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
model.JobDetailsSupported = false;
|
||||
model.JobDetailsException = ex;
|
||||
return View(model);
|
||||
@@ -726,6 +731,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogRepairError, m);
|
||||
throw;
|
||||
@@ -740,6 +746,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogRepairError, m);
|
||||
}
|
||||
@@ -762,6 +769,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
m.Error = ex;
|
||||
return View(Views.LogRepairError, m);
|
||||
throw;
|
||||
@@ -806,6 +814,7 @@ namespace Disco.Web.Controllers
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ex.ToExceptionless().Submit();
|
||||
model.JobDetailsSupported = false;
|
||||
model.JobDetailsException = ex;
|
||||
return View(model);
|
||||
|
||||
@@ -43,6 +43,15 @@
|
||||
<UseVSHostingProcess>true</UseVSHostingProcess>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Exceptionless">
|
||||
<HintPath>..\packages\Exceptionless.1.5.2092\lib\net45\Exceptionless.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Exceptionless.Models">
|
||||
<HintPath>..\packages\Exceptionless.1.5.2092\lib\net45\Exceptionless.Models.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Exceptionless.Mvc">
|
||||
<HintPath>..\packages\Exceptionless.Mvc.1.5.2092\lib\net45\Exceptionless.Mvc.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MarkdownSharp">
|
||||
<HintPath>..\packages\MarkdownSharp.1.13.0.0\lib\35\MarkdownSharp.dll</HintPath>
|
||||
</Reference>
|
||||
@@ -2387,7 +2396,7 @@
|
||||
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
|
||||
</WebProjectProperties>
|
||||
</FlavorProperties>
|
||||
<UserProperties BuildVersion_UpdateFileVersion="True" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_DetectChanges="False" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildAction="Both" BuildVersion_StartDate="2014/6/1" />
|
||||
<UserProperties BuildVersion_StartDate="2014/6/1" BuildVersion_BuildAction="Both" BuildVersion_UseGlobalSettings="False" BuildVersion_DetectChanges="False" BuildVersion_BuildVersioningStyle="None.DeltaBaseYear.MonthAndDayStamp.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" />
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
<PropertyGroup>
|
||||
|
||||
@@ -145,6 +145,9 @@ namespace Disco.Web
|
||||
_OrganisationName = value;
|
||||
}
|
||||
}
|
||||
|
||||
public static string DeploymentId { get; set; }
|
||||
|
||||
public static bool MultiSiteMode { get; set; }
|
||||
|
||||
#region Version
|
||||
|
||||
@@ -37,7 +37,9 @@
|
||||
</pages>
|
||||
</system.web>
|
||||
<system.webServer>
|
||||
<modules runAllManagedModulesForAllRequests="true" />
|
||||
<modules runAllManagedModulesForAllRequests="true">
|
||||
<add name="ExceptionlessModule" type="Exceptionless.Mvc.ExceptionlessModule, Exceptionless.Mvc" />
|
||||
</modules>
|
||||
<handlers>
|
||||
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
|
||||
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
<package id="DotNet.Highcharts" version="4.0" targetFramework="net45" />
|
||||
<package id="EntityFramework" version="5.0.0" targetFramework="net45" />
|
||||
<package id="EntityFramework.SqlServerCompact" version="4.3.6" targetFramework="net45" />
|
||||
<package id="Exceptionless" version="1.5.2092" targetFramework="net45" />
|
||||
<package id="Exceptionless.Mvc" version="1.5.2092" targetFramework="net45" />
|
||||
<package id="FontAwesome" version="4.1.0" targetFramework="net45" />
|
||||
<package id="jQuery" version="2.1.1" targetFramework="net45" />
|
||||
<package id="jQuery.UI.Combined" version="1.10.4" targetFramework="net45" />
|
||||
|
||||
Reference in New Issue
Block a user