# <a id="bitdrift.public.unary.alerts.v1.RateOfChangeAlertConfig"></a>RateOfChangeAlertConfig

**Source definition:** [`src/bitdrift/public/unary/alerts/v1/alerts.proto#L116-L152`](<https://github.com/bitdriftlabs/api/blob/main/src/bitdrift/public/unary/alerts/v1/alerts.proto#L116-L152>)

Rate of change alerts are used to look at significant changes over a period of time. They work
 for counter, rate, and histogram chart types.

<section class="proto-fields-table" markdown>
| Field | Type | Description |
|---|---|---|
| window | <span class="proto-type proto-type-well-known">[google.protobuf.Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration "google.protobuf.Duration")</span> | This comparison type defines a window. [now - window, now] is compared to  [now - 2 * window, now - window]. |
| absolute_change | <span class="proto-type proto-type-primitive">double</span><span class="proto-field-annotation">only one of <em>absolute_change</em>, or <em>percentage_change</em> can be set</span> | This compares an absolute amount of change when the data is aggregated across each of the  comparison windows. |
| percentage_change | <span class="proto-type proto-type-primitive">double</span><span class="proto-field-annotation">only one of <em>percentage_change</em>, or <em>absolute_change</em> can be set</span> | This compares a percentage of change when the data is aggregated across each of the  comparison windows. |
| change_direction | <span class="proto-type proto-type-enum">[<i class="proto-type-part">bitdrift</i><i class="proto-type-dot">.</i><i class="proto-type-part">public</i><i class="proto-type-dot">.</i><i class="proto-type-part">unary</i><i class="proto-type-dot">.</i><i class="proto-type-part">alerts</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">RateOfChangeAlertConfig</i><i class="proto-type-dot">.</i><i class="proto-type-part">ChangeDirection</i>](#bitdrift.public.unary.alerts.v1.RateOfChangeAlertConfig.ChangeDirection "bitdrift.public.unary.alerts.v1.RateOfChangeAlertConfig.ChangeDirection")</span><br><em class="proto-field-annotation">must be a defined enum value</em> | The direction of change to check for. |
| histogram_configuration | <span class="proto-type proto-type-message">[<i class="proto-type-part">bitdrift</i><i class="proto-type-dot">.</i><i class="proto-type-part">public</i><i class="proto-type-dot">.</i><i class="proto-type-part">unary</i><i class="proto-type-dot">.</i><i class="proto-type-part">charts</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">HistogramConfiguration</i>](bitdrift_public_unary_charts_v1_HistogramConfiguration.md "bitdrift.public.unary.charts.v1.HistogramConfiguration")</span> | Configuration for any histogram values within the aggregate ID. This is required if the  aggregate ID refers to a histogram so that one or more percentiles can be used as part of the  alert condition. |
| limit_strategy | <span class="proto-type proto-type-message">[<i class="proto-type-part">bitdrift</i><i class="proto-type-dot">.</i><i class="proto-type-part">public</i><i class="proto-type-dot">.</i><i class="proto-type-part">unary</i><i class="proto-type-dot">.</i><i class="proto-type-part">charts</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">LimitStrategy</i>](bitdrift_public_unary_charts_v1_LimitStrategy.md "bitdrift.public.unary.charts.v1.LimitStrategy")</span> | Optional limit strategy to use for this alert. If this is omitted, a default value of limiting  by a top k of 5 entries is used. Ultimately this will allow alerting on specific dimensions  for a group by aggregate ID if desired. |

</section>
<p class="h4">Example</p>
```json
{
  "absolute_change": 100.0,
  "change_direction": "INCREASE",
  "histogram_configuration": {
    "percentile": 1.0,
    "percentiles": [
      1.0
    ]
  },
  "limit_strategy": {
    "exclusions": {
      "dimension_identifiers": [
        {
          "id": "time_series_id_opaque_example",
          "labels": [
            {
              "name": "name",
              "value": "value"
            }
          ]
        }
      ],
      "return_other": false
    },
    "sort_order": "MAX",
    "top_k_limit": {
      "top_k": 5
    }
  },
  "window": "3600s"
}
```

# <a id="bitdrift.public.unary.alerts.v1.RateOfChangeAlertConfig.ChangeDirection"></a>RateOfChangeAlertConfig.ChangeDirection <em class="proto-enum">Enum</em>

**Source definition:** [`src/bitdrift/public/unary/alerts/v1/alerts.proto#L117-L120`](<https://github.com/bitdriftlabs/api/blob/main/src/bitdrift/public/unary/alerts/v1/alerts.proto#L117-L120>)

| Name | Description |
|---|---|
| INCREASE |  |
| DECREASE |  |

