diff --git a/NzbDrone.Common/NzbDrone.Common.csproj b/NzbDrone.Common/NzbDrone.Common.csproj index e7c0441a5..cc2912980 100644 --- a/NzbDrone.Common/NzbDrone.Common.csproj +++ b/NzbDrone.Common/NzbDrone.Common.csproj @@ -38,8 +38,8 @@ ..\Libraries\Exceptioneer.WindowsFormsClient.dll - - ..\packages\Exceptron.Driver.0.1.0.34\lib\net20\Exceptron.Driver.dll + + ..\packages\Exceptron.Client.1.0.1\lib\net20\Exceptron.Client.dll ..\packages\Newtonsoft.Json.4.5.4\lib\net40\Newtonsoft.Json.dll @@ -51,6 +51,7 @@ ..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll + diff --git a/NzbDrone.Common/ReportingService.cs b/NzbDrone.Common/ReportingService.cs index 43bc34205..fb1bb6be9 100644 --- a/NzbDrone.Common/ReportingService.cs +++ b/NzbDrone.Common/ReportingService.cs @@ -1,7 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; -using Exceptron.Driver; +using Exceptron.Client; +using Exceptron.Client.Configuration; using NLog; using NzbDrone.Common.Contract; @@ -15,7 +16,7 @@ namespace NzbDrone.Common private const string PARSE_URL = SERVICE_URL + "/ParseError"; public static RestProvider RestProvider { get; set; } - public static ExceptionClient ExceptronDriver { get; set; } + public static ExceptronClient ExceptronClient { get; set; } private static readonly HashSet parserErrorCache = new HashSet(); @@ -86,7 +87,7 @@ namespace NzbDrone.Common exceptionData.Severity = ExceptionSeverity.Fatal; } - return ExceptronDriver.SubmitException(exceptionData).RefId; + return ExceptronClient.SubmitException(exceptionData).RefId; } catch (Exception e) { @@ -106,13 +107,18 @@ namespace NzbDrone.Common public static void SetupExceptronDriver() { - ExceptronDriver = new ExceptionClient("CB230C312E5C4FF38B4FB9644B05E60G") + var config = new ExceptronConfiguration + { + ApiKey = "CB230C312E5C4FF38B4FB9644B05E60G", + ThrowExceptions = !EnvironmentProvider.IsProduction, + }; + + //ExceptronClient.Enviroment = EnvironmentProvider.IsProduction ? "Prod" : "Dev"; + + ExceptronClient = new ExceptronClient(config) { ApplicationVersion = new EnvironmentProvider().Version.ToString() }; - - ExceptronDriver.ClientConfiguration.ThrowsExceptions = !EnvironmentProvider.IsProduction; - ExceptronDriver.Enviroment = EnvironmentProvider.IsProduction ? "Prod" : "Dev"; } private static void VerifyDependencies() @@ -130,7 +136,7 @@ namespace NzbDrone.Common } } - if (ExceptronDriver == null) + if (ExceptronClient == null) { if (EnvironmentProvider.IsProduction) { diff --git a/NzbDrone.Common/packages.config b/NzbDrone.Common/packages.config index 877aabc4c..d7bca8a12 100644 --- a/NzbDrone.Common/packages.config +++ b/NzbDrone.Common/packages.config @@ -1,6 +1,6 @@  - + \ No newline at end of file diff --git a/packages/Exceptron.Client.1.0.1/Exceptron.Client.1.0.1.nupkg b/packages/Exceptron.Client.1.0.1/Exceptron.Client.1.0.1.nupkg new file mode 100644 index 000000000..2f0b5b432 Binary files /dev/null and b/packages/Exceptron.Client.1.0.1/Exceptron.Client.1.0.1.nupkg differ diff --git a/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.dll b/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.dll new file mode 100644 index 000000000..d623ec5b5 Binary files /dev/null and b/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.dll differ diff --git a/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.xml b/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.xml new file mode 100644 index 000000000..75d1a9dc2 --- /dev/null +++ b/packages/Exceptron.Client.1.0.1/lib/net20/Exceptron.Client.xml @@ -0,0 +1,351 @@ + + + + Exceptron.Client + + + + + exceptron api address. Do not modify this property. + + + + + If ExceptronClinet should throw exceptions in case of an error. Default: + + + Its recommended that this flag is set to True during development and in production systems. + If an exception is thrown while this flag is set to the thrown exception will be returned in + + + + + The API of this application. Can find your API key in application settings page. + + + + + If the machine name should be attached to the exception report + + Machine name can be usefull in webfarm enviroments when multiple + servers are running the same app and the issue could be machine specific. + Hoewever, You might want to disable this feature for privacy reasons. + + + + Represents information that will be used to construct an exception report. + + + + + Exception that is being reported + + + + + Component that experianced this exception. + + + It is common to use the logger name that was used to log the exception as the component. + + + DataAccess, Configuration, Registration, etc. + + + + + ID that will uniquely identify the user + + + This Id does not have to be tied to the user's identity. + You can use a system generated unique ID such as GUID. + This field is used to report how many unique users are experiencing an error. + + + "62E5C8EF-0CA2-43AB-B278-FC6994F776ED" + "Timmy@aol.com" + "26437" + + + + + Any message that should be attached to this exceptions + + + Something went wrong while checking for application updates. + + + + + Severity of the exception being reported + + + + + that triggered this exception. If no is provided + will try to get the current from + + + + + Submit an exception to Exceptron Servers. + + Exception data to be reported to the server + + + + Submit an exception to Exceptron Servers. + + Exception that is being reported + Component that experianced this exception. + Severity of the exception being reported + Any message that should be attached to this exceptions + ID that will uniquely identify the user + in which the exception occured. If no is provided + will try to get the current from + + + + + Client Configuration + + + + + Version of application executing. Default: Version of + + + + + Creates a new instance of + Loads from application config file. + + + + Exceptron client configuration + + + + Submit an exception to Exceptron Servers. + + Exception that is being reported + Component that experianced this exception. + Severity of the exception being reported + Any message that should be attached to this exceptions + ID that will uniquely identify the user + in which the exception occured. If no is provided + will try to get the current from + + + + + Submit an exception to Exceptron Servers. + + Exception data to be reported to the server + + + + Version of Client + + + + + Name of Client + + + + + Client Configuration + + + + + Version of application executing. Default: Version of + + + + + Framework Type of the Host Application (.Net/mono) + + + + + Exception report reference ID. This ID will be shared across + similar exceptions + + + + + Was the report successfully processed on the server + + + + + Exception that caused the message to fail. + + + This property will only be populated if is set to /> + Exception is thrown if is set to . + + + + + Severity of the exception being reported + + + + + Excepted Error. Can be ignored + + + + + Error that can be handled gracefully + + + + + Blocking user from completing their intended action + + + + + Will most likely cause the application to crash + + + + + API key + + + + + Application Version + + + + + Exception Severity + + + + + User or Instance ID + + + + + Type of exception + + + + + Exception message + + + + + List of frames that make up the StackTrace of the exception + + + + + Component that experienced this exception + + + + + Message that was logged along with the exception. + + + + + User's culture in + + http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.name.aspx + + + + OS Version + + + + + Name of the Client that generated and is sending this message + + + + + Version of the Client that generated and is sending this message + + + + + Host name of the machine that encountered this exception + + + + + + Browser useragent + + Only used for exception in context of a web request/ + + + + HTTP response status code + + Only used for exception in context of a web request/ + + + + Indicates the HTTP data transfer method used by the client. + + GET, POST, PUT, DELETE + + + + Framework Version (CLR) of the Host Application + + + + + Framework Type of the Host Application + + + + + This class encodes and decodes JSON strings. + Spec. details, see http://www.json.org/ + + JSON uses Arrays and Objects. These correspond here to the datatypes ArrayList and Hashtable. + All numbers are parsed to doubles. + + + + + Order of current frame + + + + + Line number of the current frame + + + + + File name of the current frame + + + + + Method name for current frame + + + + + Class name for current frame + + + + diff --git a/packages/Exceptron.Driver.0.1.0.34/Exceptron.Driver.0.1.0.34.nupkg b/packages/Exceptron.Driver.0.1.0.34/Exceptron.Driver.0.1.0.34.nupkg deleted file mode 100644 index afe22d692..000000000 Binary files a/packages/Exceptron.Driver.0.1.0.34/Exceptron.Driver.0.1.0.34.nupkg and /dev/null differ diff --git a/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.dll b/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.dll deleted file mode 100644 index d22620a57..000000000 Binary files a/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.dll and /dev/null differ diff --git a/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.pdb b/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.pdb deleted file mode 100644 index 548a9f199..000000000 Binary files a/packages/Exceptron.Driver.0.1.0.34/lib/net20/Exceptron.Driver.pdb and /dev/null differ