Skip to content

Commit a771c4e

Browse files
committed
Add dashboard configuration option to disable specific metric batches
1 parent a7ea32b commit a771c4e

File tree

16 files changed

+21
-2
lines changed

16 files changed

+21
-2
lines changed

dashboard/components.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ def create_batch_card(batch_name: str, stats: dict) -> Card:
235235
),
236236
),
237237
Button(
238-
batch_name,
238+
"View Metrics",
239239
hx_get=f"/batch/{batch_name}",
240240
hx_push_url=f"/batch/{batch_name}",
241241
hx_target="#main-content",

dashboard/state.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def calculate_metric_stats(self, batch_name):
5656
{
5757
"metric_name": metric_name,
5858
"anomaly_rate": (
59-
df_metric["metric_alert"].mean()
59+
df_metric["metric_alert"].fillna(0).mean()
6060
if df_metric["metric_alert"].sum() > 0
6161
else 0
6262
),

dashboard/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ def get_metric_batches(source: str = "all"):
110110
dagster_ingest_jobs = [job for job in dagster_enabled_jobs if job.endswith("_ingest")]
111111
dagster_metric_batches = [job[:-7] for job in dagster_ingest_jobs if job.endswith("_ingest")]
112112
config_metric_batches = list(specs.keys())
113+
config_metric_batches = [batch for batch in config_metric_batches if not specs[batch]["disable_dashboard"]]
114+
config_metric_batches = [batch for batch in config_metric_batches if not specs[batch]["disable_batch"]]
113115
if source == "dagster":
114116
metric_batches = dagster_metric_batches
115117
elif source == "config":

metrics/defaults/defaults.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
db: "sqlite" # database type to use.
33
table_key: "metrics" # table to store metrics in.
44

5+
############################################
6+
# dashboard params
7+
############################################
8+
disable_dashboard: False # if you want to disable the dashboard for some reason.
9+
510
############################################
611
# model params
712
############################################

metrics/examples/bigquery/bigquery_example_simple/bigquery_example_simple.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ alert_cron_schedule: "*/20 * * * *" # alert every 20 minutes
1111
change_cron_schedule: "*/20 * * * *" # change detection every 20 minutes
1212
llmalert_cron_schedule: "*/20 * * * *" # alert every 20 minutes
1313
disable_llmalert: True
14+
disable_dashboard: True
1415
plot_cron_schedule: "*/25 * * * *" # plot every 25 minutes
1516
alert_always: False
1617
alert_methods: "email"

metrics/examples/example_jinja/example_jinja.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# this shows a jinja based template example
22
disable_batch: True
3+
disable_dashboard: True
34
metric_batch: "example_jinja"
45
ingest_sql: >
56
{% set metrics = ['metric_1', 'metric_2', 'metric_3'] %}

metrics/examples/example_simple/example_simple.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# a basic minimal example of a batch
22
disable_batch: False
33
metric_batch: "example_simple"
4+
disable_dashboard: True
45
alert_always: False
56
alert_methods: "email,slack"
67
ingest_cron_schedule: "*/2 * * * *"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# this shows a jinja based template example using a templated sql file
22
disable_batch: True
3+
disable_dashboard: True
34
metric_batch: "example_sql_file"
45
ingest_sql: >
56
{% include "./examples/example_sql_file/example_sql_file.sql" %}

metrics/examples/freq/freq.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
db: "bigquery"
33
table_key: "andrewm4894.metrics.metrics"
44
disable_batch: False
5+
disable_dashboard: True
56
metric_batch: "freq_example"
67
model_path: "gs://andrewm4894-tmp/models"
78
# we will resample to 10 minute intervals and take the mean

metrics/examples/gsod/gsod.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
db: "bigquery"
33
table_key: "andrewm4894.metrics.metrics"
44
disable_batch: False
5+
disable_dashboard: True
56
metric_batch: "gsod"
67
model_path: "gs://andrewm4894-tmp/models"
78
ingest_cron_schedule: "30 10 * * *"

0 commit comments

Comments
 (0)