## Process the files of interest:
##
directory <- "//sva.se/UPP/Temp/Falkenrapporter"
files <- c("AI_vilda.csv",
"E15-026 Grundrapport.csv",
"E16-036 Grundrapport.csv",
"Harpest-falkenrapport.csv",
"E18-024 Grundrapport.csv")
scripts <- c("influenza_timeslider.R",
"deployKvarka.R",
"CWD_timeslider.R",
"tularemia_map.R",
"ASF_timeslider.R")
rp_report <- c("rapportportal/Gemmensamma mappar/SVA/Svala/Sjukdomsövervakning/AI vilda fåglar",
"rapportportal/Gemmensamma mappar/SVA/Falken/Grundrapport",
"rapportportal/Gemmensamma mappar/SVA/Falken/Grundrapport",
"rapportportal/Gemmensamma mappar/SVA/Falken/Grundrapport",
"rapportportal/Gemmensamma mappar/SVA/Falken/Grundrapport")
rp_parameter <- c(NA, "E15-026", "E16-036", "E19-029", "E18-024")
files <- file.path(directory, files)
info <- file.info(files)
info$name <- files
info$scripts <- scripts
info$rp_report <- rp_report
info$rp_parameter <- rp_parameter
info_data <- do.call("rbind", lapply(files, function(x){
if(file.exists(x)) {
df <- read.csv2(x)
rows <- nrow(df)
if("Uppdragid" %in% names(df)) {
blank <- all(is.na(df$Uppdragid))
}
if("Uppdragsid" %in% names(df)) {
blank <- all(is.na(df$Uppdragsid))
}
df <- data.frame(name = x,
row = rows,
data_blank = blank, stringsAsFactors = FALSE)
return(df)
}
return(NULL)
}))
info$row <- info_data$row[match(info$name, info_data$name)]
info$data_blank <- info_data$data_blank[match(info$name, info_data$name)]
info$age <- as.numeric(difftime(Sys.time(), info$mtime, units = "hours"))
## Report something back:
## Are the file empty?
empty_files <- NULL
if(any(info$size < 5000)) {
empty_files <- paste(info$rp_report[info$size < 5000],
"with parameter",
info$rp_parameter[info$size < 5000],
"has a very small file size")
}
empty_data <- NULL
if(any(info$data_blank & info$size >= 5000)) {
empty_data <- paste(info$rp_report[info$data_blank & info$size >= 5000],
"with parameter",
info$rp_parameter[info$data_blank & info$size >= 5000],
"contains data but UppdragID is blank throughout")
}
old_data <- NULL
if(any(info$age > 75)) {
old_data <- paste(info$rp_report[info$age > 75],
"with parameter",
info$rp_parameter[info$age > 75],
"has not run for the past 72 hours")
}
missing_files <- NULL
if(any(is.na(info$mtime))) {
missing_files <- paste(info$rp_report[is.na(info$mtime)],
"with parameter",
info$rp_parameter[is.na(info$mtime)],
"has not run recently")
}
report <- do.call("c", list(empty_files,
empty_data,
old_data,
missing_files)
)
if(is.null(report)) {
report <- "No errors detected"
}
writeLines(report, con = "//sva.se/UPP/Temp/Falkenrapporter/rp_report.txt")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.