Network Performance Monitoring is now generally available! Network Monitoring is now available!

Forecasts Monitor

Overview

Forecasting is an algorithmic feature that allows you to predict where a metric is heading in the future. It is well-suited for metrics with strong trends or recurring patterns. For example, if your application starts logging at a faster rate, forecasts can alert you a week before a disk fills up, giving you adequate time to update your log rotation policy. Or, you can forecast business metrics, such as user sign-ups, to track progress against your quarterly targets.

Monitor creation

To create a forecast monitor in Datadog, use the main navigation: Monitors –> New Monitor –> Forecast.

Define the metric

Any metric currently reporting to Datadog is available for monitors. For more information, see the Metric Monitor page.

After defining the metric, the forecast monitor provides two preview graphs in the editor:

  • The Historical View lets you explore the past metric data at different time scales.
  • The Evaluation Preview shows a combination of historical and predicted metric data.

Set alert conditions

  • Trigger an alert when the edge of the forecast confidence bounds goes above or below.
  • the threshold within the next 24 hours, 1 week, 1 month, etc.
  • Alert threshold: >= <NUMBER>
  • Alert recovery threshold: < <NUMBER>

Advanced Options

Datadog automatically analyzes your chosen metric and sets several parameters for you. However, the options are available to edit under Advanced Options:

OptionDescription
AlgorithmThe forecast algorithm (linear or seasonal)
ModelThe forecast model (default, simple, or reactive) for the linear algorithm
SeasonalityThe forecast seasonality (hourly, daily, or weekly) for the seasonal algorithm
Daylight savingsAvailable for seasonal forecast monitors with daily or weekly seasonality.
RollupThe rollup interval—larger intervals between points avoid noise influence on the forecast.
DeviationsThe width of the range of forecasted values—a value of 1 or 2 is generally large enough for most “normal” points.
Algorithms

The available forecast algorithms are linear and seasonal:

Use the linear algorithm for metrics that have steady trends but no repeating seasonal pattern. There are three different models which control the linear algorithm’s sensitivity to level shifts:

ModelDescription
DefaultAdjusts to the most recent trend and extrapolates data while being robust to recent noise.
SimpleDoes a robust linear regression through the entire history.
ReactiveExtrapolates recent behavior better at the risk of overfitting to noise, spikes, or dips.

Use the seasonal algorithm for metrics with repeating patterns. There are three different seasonality choices:

OptionDescription
HourlyThe algorithm expects the same minute after the hour behaves like past minutes after the hour, for example 5:15 behaves like 4:15, 3:15, etc.
DailyThe algorithm expects the same time today behaves like past days, for example 5pm today behaves like 5pm yesterday.
WeeklyThe algorithm expects that a given day of the week behaves like past days of the week, for example this Tuesday behaves like past Tuesdays.

Note: This algorithm requires at least two seasons of history and uses up to six seasons for forecasting.

Notifications

For detailed instructions on the Say what’s happening and Notify your team sections, see the Notifications page.

API

To create forecast monitors programmatically, see the Datadog API reference. Datadog recommends exporting a monitor’s JSON to build the query for the API.

Troubleshooting

The following functions cannot be nested inside calls to the forecast() function:
anomalies, cumsum, integral, outliers, piecewise_constant, robust_trend, or trend_line

Further Reading