Running a project usually involves a production deployment, development setups, and, in a continuous pipeline setup, staging, QA or review installations. Keeping all these different environments under monitoring without interfering with each other requires a tailored monitoring tool, such as Tideways, with built in multi-environment support — available on all plans.
How Environments Work
Environments allow you to collect performance data and traces from different "environments" of your project. For example, data is kept separate to avoid interference of testing data with production data. Comparing them is supported to find performance regressions before they get into production.
The "production" environment is created for any new project and marked as "default" environment
Other environments can be created through the UI or by sending data from daemons.
The default environment gets the majority of traces/minute, other environments get 1 trace/minute by default and can be configured to receive more.
Environments either have "full" or "limited" visibilty.
After the limit of environments for a license is reached, additional environments created hereafter are marked as inactive. Servers collecting data for an inactive environment have all their data discarded at the daemon level.
Environments are available in Basic, Standard and Pro plans.
Switching Between Environments
To switch between environments in the application’s Performance Overview dashboard, click the environment that you want to view data for in The Service and Environment Switcher.
In the example below there are two environments to choose from:
Limited Visibility Environments
The default environment provides full visilibity, with full retention days, larger amount of traces and transaction details. Additional environments are usually created with limited visibilty. Limited visibilty means:
By default no transaction monitoring details are stored for the limited environment, only monitoring data on the service level. This happens either because transactions are marked as inactive by default or because its hardcoded for older plans.
The number of traces collected every minute defaults to just 1 for limited environments but can be configured to be more.
On older Tideways plans purchased before 2023 the retention for monitoring, profiler and exception data is limited environments is one day.
The most common use-case for the environment feature is a permanently running staging application that is running an unstable version of your project. You can run Tideways on this staging deployment and collect all data into a single environment.
Platform-as-a-Service with Review Apps
If you are using an existing PaaS (Platform as a Service) or have built a review pipeline yourself (for example with Jenkins and Docker), then, for example, you can use Tideways to create on-demand environments for every newly created build that is based on a pull-request in GitHub for example.
With the active environment limitation, Tideways selects the most recent environments to collect data for you so that you always get data for the most recently created builds.
You can then check for performance regressions by running automated load-tests against these environments and checking the results from Tideways.