Exceptionless icon indicating copy to clipboard operation
Exceptionless copied to clipboard

Environments

Open tekmaven opened this issue 8 years ago • 7 comments

Currently there is no concept of environments in Exceptionless. We would like to separate Production exceptions from development environments. The current workaround we have is to create an project per app, per environment. For example: "Public Website (Production)" and "Public Website (Development Environment)".

A couple of ideas:

  • Allow me to define environments on a per-project basis and give me different API keys per environment. Have an environment switcher in the UI.
  • Build in the concept of test vs production and provide an API key for each per project. Have a test / prod switch in the UI.

tekmaven avatar May 12 '16 20:05 tekmaven

Would love to see this, our project drop down list is getting crowded :)

Perhaps the most intuitive way of implementing this would be to make a project act as a container for multiple environments. Much like how an organization acts as a container for projects.

A possible hierarchy would look like: An organization can have many projects. Each project can have many environments.

The project dropdown list could then have a sub menu for each project, listing its environments.

crowbarsolutions avatar Oct 14 '16 21:10 crowbarsolutions

This can be done with separate projects as you mentioned - but how is having environments with separate api keys really different to having separate projects? how would that be visually represented in the UI, would all of the environments messages be combined into one project that you then need to filter?

We do this with tags (for instance "tag:prod" into the search bar). Is searching by tags and version numbers sufficient? How would filtering by a new environment be different from searching by tag?

caesay avatar Feb 16 '17 17:02 caesay

We need to figure this out and I'd like it sooner than later. I think having some kind of environments dropdown or autocompletion in the search bar would be good. Having multiple projects (live and not live) is okay but when you have hundreds of projects it's a pain.. Also you might want to track things by specific environment / rack. Currently tags or different projects work the best, but with tags you lose notifications on a per environment basis.

niemyjski avatar Feb 16 '17 18:02 niemyjski

I'm really a fan of a simple Live/Test switch, which is how Stripe works. We have several test environments, but I really care about separating Live errors from Test errors. Here is a screenshot of the stripe UI, see the Live/Test switch on the top left:

image

There are several potential uses for knowing an error originated is a test environment. One idea for example is to exclude test errors in emails.

Add a test field to projects. When a project is created, actually create two projects and set one to a test. The UI can filter only Live projects in the projects drop down, and then a switch similar to the Stripe switch could be put next to the dropdown or even within it.

tekmaven avatar Feb 16 '17 18:02 tekmaven

Yeah, I really like how stripe does it as well and would like to do something like this. Would you expect any thing different for test environments like lack of notifications etc?

niemyjski avatar Feb 16 '17 18:02 niemyjski

I think a first iteration could just simply focus on the project dropdown and adding a switcher. If you get adoption of the feature, you could keep building on top of the feature, like using it with in the context of notifications.

tekmaven avatar Feb 16 '17 18:02 tekmaven

Yeah, would definitely do baby steps.

niemyjski avatar Feb 16 '17 18:02 niemyjski