Heroku Labs: Application Metrics Beta Channel
Last updated 18 November 2016
An opt-in labs channel is available for the Dashboard Metrics, which allows users to preview and comment on upcoming features.
How to opt in
To opt into the beta using the Dashboard, navigate to the Dashboard Metrics page.
To opt in from the Heroku CLI type:
$ heroku labs:enable metrics-beta
How to opt out
To opt out of the beta using the Dashboard, click the link beside the Labs Features button in the Metrics UI.
To opt out using the Heroku CLI type:
$ heroku labs:disable metrics-beta
Individual beta features are enabled and disabled through the Lab Features dialog. Note that not all beta features will be available to all dyno types upon release to general audience. If there are additional features you would like to see let us know.
Data lag indicator
To help differentiate between application outages and missing metrics data we’ve released a beta feature that highlights data gaps.
How it works
The initial release of Threshold Autoscaling will be limited to web Performance (PM, PL) and Private dynos, and will horizontally scale up or down in 1 dyno increments with a minimum lag of 1 minute between scaling events. Scaling is based on a user-specified 95th percentile (p95) web dyno response time threshold with request throughput factored in behind the scenes. The autoscaling model calculates the deficit or excess of dynos required to maintain the current request throughput within the p95 latency SLA. Your dynos will be scaled accordingly.
Once the beta feature has been enabled for your app you should see the Enable Autoscaling button appear next to your web dynos on the Resources tab, with additional access from the Metrics tab.
In the autoscaling dialog specify the minimum and maximum number of web dynos for the app. The minimum must be at least 1 dyno. The default max is 10 for both Performance and Spaces dynos. The cost calculator shows you the corresponding cost range in your billing plan units ($ or dyno units). Next set the p95 response time threshold (minimum of 50 ms). A suggested setting is provided based on the median p95 latency for the past 24 hours. The minimum count setting must be at least equal to your current dyno count.
Monitoring autoscale events
Autoscaling events appear alongside manual scale events in the Events chart. In event details they are currently identified as having been initiated by “Dyno Autoscaling”.
If you disable autoscaling the dyno count will remain at its current setting.
Known issues & limitations
If you received an exception from Heroku support or sales to have your web dyno limit raised, this change will not reflected in the UI for the beta. The maximum dyno count currently available for autoscaling is 10.
As with any autoscaling utility there are also certain application health scenarios in which autoscaling may not not help. You may also need to tune your Postgres connection pool to accommodate changes in dyno formation. We strongly recommend that you simulate the production experience with load testing, and use Threshold Alerting in conjunction with Threshold Autoscaling to monitor end user experience.
You can provide feedback through the Labs Feature dialog or by emailing the Dashboard Metrics team directly at firstname.lastname@example.org. Please drop us a line and let us know what you think.