Temporal Checks
Is Before and Is After test types.
Two variants: check that the values in a date, datetime, or timestamp column fall before or after a specific point in time. These only apply to temporal column types.
Is Before — a row fails if its value is not before (that is, at or after) the configured point in time.
Is After — a row fails if its value is not after (that is, at or before) the configured point in time.
When to use it
A business expects
order_datein anorderstable to never be in the future, which would point to a clock or timezone bug. A daily Is Before check against "now" flags any future-dated row.A business requires users to be at least 18 years old. A daily Is Before check on
date_of_birth, checked against a point in time of "18 years before now," flags any row more recent than that point — that is, someone younger than 18.
What's configurable
Schedule — fixed recurring, or Manual (requires Full Table Scan if Manual).
Scan Method — Full Table Scan or Incremental Scan.
Point in Time — the threshold to compare column values against. You can set this as:
Now — the moment the monitor runs.
A fixed date or date/time — a specific calendar date, or an exact date and time with timezone, if the column stores time as well as date.
An offset from now — a fixed amount of time before or after "now," in days, hours, or minutes (for example, "7 days from now" or "24 hours ago"). There's no "years" option — express a multi-year offset in days, or as a fixed date.
If the column is a plain date type with no time component, you can only use "Now," a fixed date, or a day-based offset — you can't compare a date-only column against a specific time of day or an hour/minute offset.
Tolerance (optional) — how many, or what percentage of, failing rows are allowed.

Worked example — Is Before, using "Now"
Asset:
orderstable, columnorder_date(timestamp)Check: Is Before
Point in Time: Now
Tolerance: not set
Resulting rule: "An incident will be created when any row fails." (A row fails here when order_date is not before now — that is, it's dated in the future.)
Worked example — Is Before, using an offset
Asset:
userstable, columndate_of_birth(date)Check: Is Before
Point in Time: Offset from now — approximately 18 years ago, expressed in days, since only day, hour, or minute offsets are available for a date column
Tolerance: not set
Resulting rule: "An incident will be created when any row fails." (A row fails here when date_of_birth is not before that point — that is, the person is younger than 18.)
Notes
Changing the schedule or scan method later is a destructive change (it creates a new monitor version). Adjusting only the tolerance value is not.
Last updated