-
-
Notifications
You must be signed in to change notification settings - Fork 143
Upgrading
Please read this guide when upgrading from any version of Exceptionless. Upgrading is meant to be an easy process. Most users will just have to upgrade the NuGet package.
If you run into any issues after upgrading the NuGet packages please take a look at the sections below.
- Open the NuGet Package Manager dialog.
- Click on the
Updatestab. - Select the Exceptionless platform specific NuGet package (Ex.
Exceptionless.Web) and click theUpdatebutton. - For more information please see the official NuGet documentation.
Please read this guide when upgrading from Exceptionless 2.x. The Exceptionless latest client has a few breaking changes from 2.x client that users should be aware of when upgrading. Please follow the guide below after upgrading your NuGet packages from version 2.x to the latest version.
The following changes affect a very small portion of users.
Renamed Enrichments to Plugins. The following changes will need to be made if you were using enrichments:
-
IEventEnrichmenthas been renamed toIEventPlugin -
IEventPlugin.Enrich(context, event)signature has been changed toIEventPlugin.Run(context). The event has been moved to the context -
client.Configuration.AddEnrichment<IEventEnrichment>();has been renamed toclient.Configuration.AddPlugin<IEventPlugin>(); -
EventPluginContext.Dataproperty has been renamed toEventPluginContext.ContextData -
EventSubmittingEventArgs.EnrichmentContextDataproperty has been renamed toEventSubmittingEventArgs.PluginContextData
Please read this guide when upgrading from Exceptionless 1.x. The Exceptionless latest client has a few breaking changes from 1.x client that users should be aware of when upgrading. Please follow the guide below after upgrading your NuGet packages from version 1.x to the latest version.
If you require a strong named NuGet package please remove the existing NuGet package and install the signed NuGet version. Example: Remove Exceptionless NuGet package and install the Exceptionless.Signed NuGet package.
ExceptionlessClient.Current.GetLastErrorId() has been renamed to ExceptionlessClient.Default.GetLastReferenceId(). NOTE: To have a reference id automatically generated, you must call ExceptionlessClient.Default.Configuration.UseReferenceIds()
The following changes affect a very small portion of users.
-
client.Create(Exception)has been renamed toclient.CreateEvent(). -
client.CreateError(Exception)has been renamed toclient.CreateException(Exception). NOTE: This now submits the exception. -
client.SubmitError(Error)has been renamed toclient.SubmitEvent(Event). -
client.SubmitError(Exception)andclient.Submit(Exception)has been renamed toclient.SubmitException(Exception). -
client.ProcessUnhandledException(Exception)has been renamed toclient.SubmitUnhandledException(Exception). -
client.SubmitPatch(string id, object patch)has been removed. -
client.SuspendProcessing()has been moved toclient.Configuration.Resolver.GetEventQueue().SuspendProcessing(). -
client.UpdateConfiguration()has been moved toExceptionless.Configuration.SettingsManager.UpdateSettings(client.Configuration).
ExceptionlessClient.Current has been deprecated and replaced with ExceptionlessClient.Default.
The following changes affect a very small portion of users.
-
ErrorBuilderhas been renamed toEventBuilder. -
client.Tagshas been moved toclient.Configuration.DefaultTags. -
IExceptionlessPluginhas been replaced withIEventPlugin. NOTE: Plugins can be registered viaclient.Configuration.AddPlugin<IEventPlugin>(); -
client.Configuration["MySetting"]has been moved toclient.Configuration.Settings["MySetting"].
1event EventHandler UnhandledExceptionReporting1 has been removed and replaced with 1event EventHandler SubmittingEvent1. You’ll need to wire up to 1SubmittingEvent1 and check the 1IsUnhandledError1 property.
The following changes affect a very small portion of users.
-
event EventHandler<SendErrorCompletedEventArgs> SendErrorCompletedhas been removed. To get notified of when an event has been submitted you must implement a customISubmissionClientand register it with the dependency resolver (Ex.client.Configuration.Resolver.Register<ISubmissionClient, SubmissionClient>()). -
event EventHandler<RequestSendingEventArgs> RequestSendinghas been removed. To override how an event is sent you must implement a customISubmissionClientand register it with the dependency resolver (Ex.client.Configuration.Resolver.Register<ISubmissionClient, SubmissionClient>()).
ExceptionlessClient.Default.SubmittingEvent += OnSubmittingEvent;
...
private static void OnSubmittingEvent(object sender, EventSubmittingEventArgs e) {
if (!e.IsUnhandledError)
return;
if (e.Event.Message == "Important Exception")
e.Event.Tags.Add("Important");
}-
QueuePathhas been renamed toStoragePath -
ExceptionlessAttribute(string serverUrl, string apiKey, ...)signature has been changed toExceptionlessAttribute(string apiKey) - The
ExceptionlessAttributeattribute must be in the entry or calling assembly or it won’t be picked up. To have it be picked up from a different location, you need to pass in the assembly as shown below.
[assembly: Exceptionless("YOUR_API_KEY_HERE", ServerUrl = "...", StoragePath = "|DataDirectory|\Queue")]
...
// You must specify the assembly where the attribute is defined only if it's not defined in the entry or calling assembly.
ExceptionlessClient.Default.Configuration.ReadFromAttributes(typeof(Program).Assembly);These changes will be automatically upgraded by our NuGet installer.
-
queuePathhas been renamed tostoragePath -
extendedDatahas been renamed todata. - The
exceptionlessconfiguration section has been moved into theExceptionlessassembly. NOTE: Xml configuration is not available if you are only using the PCL client.
<configSections>
<section name="exceptionless" type="Exceptionless.ExceptionlessSection, Exceptionless"/>
</configSections>
<exceptionless apiKey="YOUR_API_KEY_HERE" storagePath="|DataDirectory|\Queue">
<data>
<add name="SimpleValueFromConfig" value="Exceptionless"/>
</data>
</exceptionless>The api end point the client reports to has been changed from https://collector.exceptionless.com to https://collector.exceptionless.io. Please note that https://collector.exceptionless.com will continue to work.
Looking for General Exceptionless Documentation, UI Documentation, or Documentation for another Client?
Visit the Primary Exceptionless Documentation Page and go from there.