Templates Library

Monitors can be set both on a table or a field level in order to control specific Data Quality criteria. They can be run manually or automatically based on a Schedule, and they can alert users in case of a breach (see: Notifications Setup).

Below, you'll find a Library of predefined Sifflet Monitor Templates.

TypeMonitorApplicationDescription
Table-level HealthVolume TableCounts newly ingested rows and alerts on anomalous behaviour
Table-level HealthRow-level DuplicatesTableComputes the duplication rate [%] on a row-level and compares it to the expected value based on past behavior.
Table-level HealthFreshnessTableVerifies whether new rows have been ingested into your table following the expected pattern.
Table-level HealthFreshness (Update time gap)TableThe monitor fails when the duration since the last update deviates from historical norms.
Table-level HealthSchema ChangeTableDetects any change to the schema: new field(s), removed field(s), existing field(s) with updated types or names.
MetricsMetrics Fields: NumericThe monitor detects changes in an aggregated metric of a field (i.e. Sum)
MetricsCustom Metrics TableThe rule fails if the time series returned by the query behave differently than they did in the past
MetricsCorrelated Metrics Fields: NumericThe monitor fails if defined metrics diverge significantly from each other.
Field profilingDistribution ChangeFields: AllThe monitor fails if the distribution of a given field has changed abnormally compared to a former given run.
Field profilingDuplicates Fields: AllThe monitor detects anomalies regarding the count of duplicates for a column or a set of columns
Field profilingUniqueFields: AllA simplified version of the duplicates monitor that fails if a column or set of columns is not unique
Field profilingNulls Fields: AllThe monitor detects anomalies regarding the count of nulls/empties in a column or a set of columns
Field profilingValue List ValidationFields: StringThe monitor fails if the chosen field has values that are not present in the given list.
Field ProfilingValue RangeFields: NumericThe monitor fails if the chosen field has any values outside of a given range.
Field profilingReferential IntegrityFields: AllThe monitor fails if values in one table are not present in the other table
Format validationIs an emailFields: StringThe monitor fails if the chosen field contains at least one row that does not have an email format.
Format validationIs a phone numberFields: StringThe monitor fails if the chosen field contains at least one row that does not have a phone number format.
I.e. checking for 6 to 16 digits and will accept the field to contain the following characters +, -, (, )
Format validationIs UUIDFields: StringThe monitor fails if the chosen field contains at least one row that does not have a UUID format.
Format validationMatches regexFields: StringThe rule fails if the selected field contains at least one row that does not match the format specified by the given regular expression.
CustomSQLTableAdvanced template to write custom monitors based on business specifics. The SQL query must describe a quality breach on one or more tables within the same data source.
CustomConditional monitorsTablesAs for SQL, this template allows to write custom monitors based on business use cases. With conditional statements, no SQL syntax is needed. The rule fails if values are found inside the filtering criteria set by conditional rules