models: - name: < model name > config: elementary: timestamp_column: < timestamp column > columns: - name: < column name > data_tests: - elementary.column_anomalies: arguments: column_anomalies: < specific monitors, all if null > where_expression: < sql expression > time_bucket: # Daily by default period: < time period > count: < number of periods > - name: < model name > ## if no timestamp is configured, elementary will monitor without time filtering columns: - name: < column name > data_tests: - elementary.column_anomalies: arguments: column_anomalies: < specific monitors, all if null > where_expression: < sql expression >
models: - name: login_events config: elementary: timestamp_column: 'loaded_at' columns: - name: user_name data_tests: - elementary.column_anomalies: arguments: column_anomalies: - missing_count - min_length where_expression: "event_type in ('event_1', 'event_2') and country_name != 'unwanted country'" time_bucket: period: day count: 1 config: tags: ['elementary'] - name: users ## if no timestamp is configured, elementary will monitor without time filtering data_tests: elementary.volume_anomalies config: tags: ['elementary'] columns: - name: user_id data_tests: - elementary.column_anomalies: config: tags: ['elementary'] arguments: timestamp_column: 'updated_at' where_expression: "event_type in ('event_1', 'event_2') and country_name != 'unwanted country'" time_bucket: period: < time period > count: < number of periods > - name: user_name data_tests: - elementary.column_anomalies: arguments: column_anomalies: - missing_count - min_length config: tags: ['elementary']
Anomaly Detection Tests
column_anomalies
Generate your anomaly test with Elementary AI
Let our Slack chatbot create the anomaly test you need.
elementary.column_anomaliesExecutes column level monitors and anomaly detection on the column.
Specific monitors are detailed in the table below and can be configured using the columns_anomalies configuration.The test checks the data type of the column and only executes monitors that are relevant to it.Default monitors by type:
models: - name: < model name > config: elementary: timestamp_column: < timestamp column > columns: - name: < column name > data_tests: - elementary.column_anomalies: arguments: column_anomalies: < specific monitors, all if null > where_expression: < sql expression > time_bucket: # Daily by default period: < time period > count: < number of periods > - name: < model name > ## if no timestamp is configured, elementary will monitor without time filtering columns: - name: < column name > data_tests: - elementary.column_anomalies: arguments: column_anomalies: < specific monitors, all if null > where_expression: < sql expression >
models: - name: login_events config: elementary: timestamp_column: 'loaded_at' columns: - name: user_name data_tests: - elementary.column_anomalies: arguments: column_anomalies: - missing_count - min_length where_expression: "event_type in ('event_1', 'event_2') and country_name != 'unwanted country'" time_bucket: period: day count: 1 config: tags: ['elementary'] - name: users ## if no timestamp is configured, elementary will monitor without time filtering data_tests: elementary.volume_anomalies config: tags: ['elementary'] columns: - name: user_id data_tests: - elementary.column_anomalies: config: tags: ['elementary'] arguments: timestamp_column: 'updated_at' where_expression: "event_type in ('event_1', 'event_2') and country_name != 'unwanted country'" time_bucket: period: < time period > count: < number of periods > - name: user_name data_tests: - elementary.column_anomalies: arguments: column_anomalies: - missing_count - min_length config: tags: ['elementary']