Skip to content

Commit 5870ad8

Browse files
committed
fix: improve get_targets_errors (shorter name)
1 parent 80702b3 commit 5870ad8

File tree

2 files changed

+12
-13
lines changed

2 files changed

+12
-13
lines changed

R/utils.R

+9-10
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,7 @@ update_site <- function(sync_to_s3 = TRUE) {
326326
if (!file_exists(template_path)) {
327327
stop("Template file does not exist.")
328328
}
329+
329330
report_md_content <- readLines(template_path)
330331
# Get the list of files in the reports directory
331332
report_files <- dir_ls(reports_dir, regexp = ".*_prod_on_.*.html")
@@ -478,14 +479,13 @@ sort_by_quantile <- function(forecasts) {
478479

479480

480481
#' Print recent targets errors.
481-
get_recent_targets_errors <- function(time_since = minutes(60)) {
482-
meta_df <- targets::tar_meta()
482+
get_targets_errors <- function(project = tar_path_store(), top_n = 10) {
483+
meta_df <- targets::tar_meta(store = project)
483484
forecast_errors <- meta_df %>%
484-
filter(time > Sys.time() - time_since, !is.na(parent), !is.na(error)) %>%
485-
arrange(desc(time)) %>%
485+
filter(!is.na(parent), !is.na(error)) %>%
486486
distinct(parent, error, .keep_all = TRUE) %>%
487-
select(time, parent, error) %>%
488-
mutate(parent = gsub("forecast_", "", parent))
487+
mutate(parent = gsub("forecast_", "", parent)) %>%
488+
slice_max(time, n = top_n)
489489

490490
# Print each error message, along with the parent target.
491491
if (nrow(forecast_errors) > 0) {
@@ -500,10 +500,9 @@ get_recent_targets_errors <- function(time_since = minutes(60)) {
500500
}
501501

502502
other_errors <- meta_df %>%
503-
filter(time > Sys.time() - time_since, !is.na(error)) %>%
504-
arrange(desc(time)) %>%
503+
filter(!is.na(error)) %>%
505504
distinct(error, .keep_all = TRUE) %>%
506-
select(time, name, error)
505+
slice_max(time, n = top_n)
507506

508507
# Print each error message, along with the parent target.
509508
if (nrow(other_errors) > 0) {
@@ -517,7 +516,7 @@ get_recent_targets_errors <- function(time_since = minutes(60)) {
517516
}
518517
}
519518

520-
return(invisible(meta_df %>% filter(time > Sys.time() - time_since)))
519+
return(invisible(meta_df %>% slice_max(time, n = top_n)))
521520
}
522521

523522
#' Retry a function.

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ make prod-flu
5050
make prod-covid
5151

5252
# The job output can be found in nohup.out
53-
# If there are errors, you can view them with the following command (replace with appropriate project)
54-
Sys.setenv(TAR_PROJECT = "covid_hosp_prod");
55-
targets::tar_meta(fields = error, complete_only = FALSE)
53+
# If there are errors, you can view the top n with the following command (replace with appropriate project)
54+
source("scripts/targets-common.R");
55+
get_targets_errors("covid_hosp_prod", top_n = 10)
5656

5757
# Automatically append the new reports to the site index and host the site on netlify
5858
# (this requires the netlify CLI to be installed and configured, talk to Dmitry about this)

0 commit comments

Comments
 (0)