Skip to content

Releases: exceptionless/Exceptionless

v4.0.0

31 Jan 17:03
Compare
Choose a tag to compare

With 4.0.0 we focused on adding support for Elasticsearch 5. By migrating from Elasticsearch 1.7 to 5, we removed growing technical debt and benefited greatly in the process. Here is a high level overview of the benefits gained by migrating to Elasticsearch 5 in 4.0.0.

Performance

We've learned a lot since we first migrated to Elasticsearch 1.x from MongoDB. We've taken those hard lessons learned and applied them to this release as well as to our new infrastructure we setup.

  • We've moved from monthly indexes to daily indexes. This change means that when you are filtering by the last 24 hours or last week, you are greatly reducing the amount of work elasticsearch has to do to return the request data.
  • Average use cases see between 25% and 80% improvement to indexing throughput. This means that with the same hardware we can index the same documents much faster!
  • We moved from groovy scripts to painless scripts which are 4 times faster. By moving to painless scripts we also greatly simplified the burden of having to modify configuration files to enable scripting!
  • Elasticsearch has added lots of new data types since 1.7, that we can take advantage of that reduce memory, storage and query costs. This means we can query the same data faster and using less memory. We've also setup more sensible defaults to ensure we don't index very long strings.
  • Many performance and reliability improvements to snapshots (backups).

Self Hosting improvements

Our goal is to have everyone be able to setup and use exceptionless in a matter of minutes. One of the areas that had bitten a lot of self hosters in the past was forgetting to update the elasticsearch.yml file. One of the key benefits of moving to Elasticsearch 5 was the migration to painless scripts.

  • The move to using painless scripts as part of bulk updates and ingest pipelines reduced the burden of having to modify configuration files to enable scripting! Long gone are the times where you'd have to reset your setup because you missed a configuration step.
  • We've also added various maintenance jobs that handle backups and restores automatically. So you don't have to worry about losing your data!
  • Future upgrades should be seamless as Elasticsearch now handles reindexing out of the box! Once you are migrated your data to Elasticsearch 5, we think future major upgrades will just be handled by the exceptionless app itself!
  • You can now also use docker or Azure arm templates to quickly setup a cluster. We really like this direction and will continue moving down this path. How sweet would it be if you could click a single button and have Exceptionless production instance running locally!

Dashboards

With 4.0.0 we continued to focus on finishing up the backend improvements to both our repositories and parsers that we made in the 3.5 releases. We feel that all the pieces are finally in place to allow us to do custom dashboards in the near future.

Upgrading to 4.0.0

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install. Please review the self hosting documentation for more information.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

Thanks

We'd like to say thank you to the community, project sponsors and the Elasticsearch team for helping us ship 4.0.0

v3.5.1

10 Oct 16:50
Compare
Choose a tag to compare

The 3.5.1 is a maintenance release that fixed an issue with how daily email notifications were being created.

Upgrading to 3.5.1

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install. Please note that we made some changes in this release to the Elasticsearch configuration. Please review the self hosting documentation for more information.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.5.0

29 Sep 14:55
Compare
Choose a tag to compare

With 3.5.0 we focused on making backend improvements that would allow us to easier migrate to Elasticsearch 5.x in a future release. Part of this included fixing a many bugs and adding hundreds of unit tests for our repositories. As a result, we were able to fix many bugs around paging, cheaper batch updates and deletes, and much more. We feel that we need to work towards upgrading to Elasticsearch 5.x as there are many improvements like 80% faster indexing, built in reindexing support and would allow us to build out reports / dashboards easier.

  • There are a few user interface improvements and bug fixes that are included in this release. Please view the UI release notes for more info.
  • Updated repositories to latest version of Foundatio.Repositories. This gave us many performance improvements and bug fixes across the board.
  • Improved entity changed push notifications have more details about what was changed. This allows the client to be much smarter about what was updated and when to refresh.
  • Upgraded our query parser to generate more intelligent queries. We are now seeing big reductions in the amount of time it takes to run stats related queries.
  • Fixed a bug where regressed events were being marked fixed.
  • Fixed a bug where an unsuspended organization might not be able to submit any data until the limit reset.
  • Fixed a bug where there could be multiple open sessions by the same session heartbeat.

Upgrading to 3.5.0

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install. Please note that we made some changes in this release to the Elasticsearch configuration. Please review the self hosting documentation for more information.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.4.1

10 Aug 15:42
Compare
Choose a tag to compare

With 3.4.1 we focused on adding new user dashboards, job reliability and bug fixes! Here are some notable changes:

Upgrading to 3.4.1

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.4.0

07 Jul 17:54
Compare
Choose a tag to compare

With 3.4.0 we focused on adding new user dashboards, job reliability and bug fixes! Here are some notable changes:

  • Added the ability to view number of users affected by an issue or feature and many more user interface improvements are included in this release. Please view the UI release notes for more info.
  • Added new API Endpoints which allow the clients to submit heartbeats cheaply.
  • Added support for Active Directory Authentication (#223 @laughinggoose). Please see the docs for more information.
  • Added Count property to the event model used for tracking deduplicated events. This allows us to do awesome metrics going forward without paying the full cost of storing all events.
  • Added MaximumRetentionDays application setting to control the maximum retention period events are stored. This allows the retention job and plans to be smarter about cleaning up old data.
  • Fixed a few bugs where SignalR (web sockets) support didn't always work in some hosting environments (AWS).
  • Many performance and reliability improvements were made jobs and queue processing. Specifically there were cases where batch events were not always requeued or jobs could get auto abandoned.

Upgrading to 3.4.0

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.3.0

24 Mar 00:29
Compare
Choose a tag to compare

With 3.3.0 we focused on improving the search and sessions user interfaces, job reliability and bug fixes! Here are some notable changes:

  • Search, sessions and mobile user interface improvements are included in this release. Please view the UI release notes for more info.
  • Added new stats api that allows you to get numbers or a timeline of numbers for a comma delimited list of fields.
  • Greatly improved session management. Inactive sessions will be closed faster but can be reopened. Also added the ability to specify manual sessions for desktop based applications. Heartbeat events are now also hidden by default.
  • Added the ability to specify a manual stacking key client side (@adamzolotarev).
  • Automatically set a default list of bot wild cards on new projects. If you are upgrading you can run a maintenance job via the admin controller to set a default bot list. This causes all events matching these wild cards to be discarded client side.
  • Fixed an issue where marking stacks as hidden or fixed was very slow and wouldn't always work.
  • Fixed many issues where jobs could fail or stop working after a connection failure (redis) or lock timeout.
  • Fixed a localization bug that could prevent events from being processed if the geo field contained a localized number.
  • Fixed a serialization bug that was causing event extended data items (query strings, cookies, etc) to be lower cased and underscored (E.G., order_id).

Upgrading to 3.3.0

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.2.1

03 Feb 20:46
Compare
Choose a tag to compare

With 3.2.1 we focused on bug fixes and improved security! Here are some notable changes:

  • Fixed an issue where looking up events by reference id wasn't working with free accounts.
  • Major improvements to posting events via a GET Method.
  • Fixed an issue where you couldn't add or remove items to project data.
  • Users attempting to signup with an existing account will be logged in instead of receiving an error.
  • Fixed an issue where a user wouldn't be locked out after many login attempts (@VikzSharma).
  • Changing the user's email address will now reset any password reset tokens (@VikzSharma).
  • System now limits user signups and changing a users email address on an hourly basis (@VikzSharma).

Upgrading to 3.2.1

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.2.0

22 Jan 22:16
Compare
Choose a tag to compare

With 3.2 we focused on improving performance, tons of bug fixes, and adding new features! Here are some notable changes:

  • Changed the server licensing to use the Apache license. Now every Exceptionless project is under the Apache license and there should be no more confusion on how it's licensed.
  • Added the ability to track and automatically manage a users session, giving you a visibility into how long and what a user did while using your product.
    screen shot 2016-01-25 at 1 13 34 pm
    This is also answers the question, what did my users do leading up to this exception?
    screen shot 2016-01-25 at 1 17 26 pm
  • Added the ability to post events or meta data via an HTTP GET. This makes it really easy to integrate with Exceptionless no matter your environment.
  • Added the ability to resolve a users location from geo coordinates or ip address.
    screen shot 2016-01-25 at 2 03 28 pm
    1. We first look at the geo property for coordinates or an IP address.
    2. Next, we inspect IP addresses defined in the request info or machine info.
    3. Finally, if no IP address or geo coordinates are found we fallback to the client ip that that submitted the event.
  • Major improvements to reduced app startup and elastic query execution times as well as a massive improvement to processing time for processing events (over a 250% increase per 1000 events).
  • Increased hourly event throttling limit from 5x to 10x the plan limit. This is calculated by taking the plan limit / hours in the month * 10.
  • Improvements to the signup experience when inviting users (@mcquaiga, @theit8514).

Upgrading to 3.2

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.1.0

28 Oct 17:09
Compare
Choose a tag to compare

With 3.1 we focused on improving performance and resource utilization. Along with these speed boosts, we’ve also made Job improvements and upgraded to .NET 4.6.

CPU & Memory

We reduced the CPU and Memory load across the entire app. This allows the application to use fewer resources, meaning it has more time to process additional events, making everything faster. Between making Exceptionless and Foundatio 100% Async and these improvements, we’ve drastically increased the efficiency of the entire platform.

Below, we see the increase in performance from two examples. On the left, we see a reduction in CPU and Memory usage for a deployed web app instance. On the right is a visible reduction in CPU usage for an Elasticsearch node.

cpu-memory-percentage-improvements-e1446046152986-1024x343

Elasticsearch Queries

By profiling the Elasticsearch queries for efficiency and usage, we’ve been able to reduce the overall number we were running and improve the efficiency on the ones that still are.

search-request-rate-improvements-e1446046076483

Caching

Caching efficiency has been improved by removing redundant components that were utilizing valuable resources. For example, we removed the SignalR Redis Backplane, which drastically decreased the number of calls to Redis. Overall, we’ve made the app smarter throughout regarding how we cache and retrieve data.

cache-improvements-2-e1446046201498-1024x346

caching-improvements-e1446046263253-300x224

Long-running API Tasks

We’ve offloaded long-running API tasks to background jobs, freeing up a lot of resources in the app and allowing us to scale work items independently. For example, marking a stack as fixed or removing a project may take a few moments to be updated now, but the trade-off is worth it. We’re working on updating the UI experience to prompt users that the task is running in the background.

Other Improvements

Jobs

We’ve made each Job a console app, so it’s much easier to debug and deploy.

.NET 4.6

Exceptionless is now running on .NET 4.6, which has improved startup time due to various improvements with the new version. Self-hosting users should be sure to upgrade to .NET 4.6 on their servers before updating Exceptionless.

Always Improving

We’re always striving to improve the efficiency of Exceptionless and all of our projects. If you see any room for improvement or have any comments when using anything from us, please send us an in-app message, submit a GitHub issue or contact us on the website.

v3.0.0

23 Jul 22:19
Compare
Choose a tag to compare

With Exceptionless 3.0 the team wanted to focus on removing some dependencies, improving the documentation and making it easier to self host.

Removed Dependencies

Previously, MongoDB was a major dependency that increase the complexity of the overall project. All the data previously hosted in MongoDB is now hosted in ElasticSearch, making it super easy for users to self host or develop Exceptionless since you only need to set up ElasticSearch (which you had to do anyway).

With this, Redis is no longer configured by default, but you can set it up easily by setting the connection string. We definitely recommend using it.

Easier Self Hosting

The goal is to make self hosting as easy as possible so anyone can set it up and try Exceptionless out.

With Exceptionless 3.0, we now have a single build artifact that contains both the SPA app and the API end server, with default configuration. The ZIP file contains a batch file you can run to download and start ElasticSearch, launch IIS Express with a temp website, and load your browser automatically with the Exceptionless test instance. This lets you load up everything and play around with Exceptionless in a single click!

Another change to the configuration is that you now have the ability to set every Exceptionless API Setting via Environmental Variables.

Check out the documentation wiki for detailed Self Hosting Configuration docs.

Upgrading to 3.0

The only users that need to worry about upgrading anything for this new release are self hosters. If you are self hosting Exceptionless, please review the Self Hosting Documentation, which contains information about upgrading your existing install.

Please take a look at the change log for a full list of the changes.