Skip to content

Metric Anomaly Reporting

How the Metric check reports a value outside its limits: what the Record Anomaly tells you, how to read its numbers, and what the source record shows.

Anomaly Messages

Metric emits a Record Anomaly only, for the one row the check evaluates. The message depends on the comparison:

Comparison Message
Absolute Value conversion_rate has the value 0.012, which falls outside the declared limits
Absolute Change or Percentage Change revenue changed by more than the declared limit, moving from 1250000 to 610400.5

When a filter is set, the message names it at the end of its first sentence, as (applied to records where <expression>). Record and Shape Anomaly messages both carry it.

What the Numbers Mean

  • The value is the field's value on the evaluated row, shown as the source stored it.
  • The previous value in a change message is the check's previous measurement from a Scan of the same read strategy. Numbers are shown without thousands separators, and the previous value is rounded to at most three decimals.

The message names the movement, not the limit that was crossed. To see which limit failed, compare the change with the check's Min and Max on its card in the Observability Metrics tab.

When No Anomaly Is Created

The check reports nothing, and is recorded as Not Asserted for that Scan, when:

  • The rows left after the filter clause are not exactly one.
  • The field is empty on that row.

The first Scan of a change comparison under each read strategy (Incremental or Full) passes without comparing, because there is no previous measurement yet.

Source Records Behavior

The anomaly carries the evaluated row as its source record. The cell of the measured field is highlighted with an orange outline and an orange-tinted background in the Source Records view, mirroring the platform's standard violation rendering, and the rest of the row renders normally. On a computed table, the row shows the aggregate as the query returned it.

Custom Anomaly Description

Metric supports Custom Anomaly Description because it emits Record Anomalies. The option is anomaly_message_field in the API and the Custom Anomaly Description toggle in the UI.

When the option points at another column on the same row, the Record Anomaly message becomes that column's value for the violating row, shown as written. When the column is null, missing, or empty, the message falls back to the rule's standard wording, and when the column is masked the message reads <masked>. Shape Anomaly messages are unaffected.

See Also