Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

40 lines
956B

  1. lg_new_logger <- function() {
  2. lg <- lgr::LoggerGlue$new("nc-campaign-finance")
  3. if (!interactive()) {
  4. lg$add_appender(
  5. lgr::AppenderFile$new(here::here("nc-campaign-finance.log")),
  6. name = "file"
  7. )
  8. lg$set_threshold("info")
  9. }
  10. lg
  11. }
  12. lg_get_logger <- function() {
  13. if (is.null(.globals$logger)) {
  14. .globals$logger <- lg_new_logger()
  15. }
  16. .globals$logger
  17. }
  18. lg_inject_target_name <- function(lg = .globals$logger) {
  19. target_name <- targets::tar_name()
  20. if (target_name == "target") return()
  21. lg$add_filter(lgr::FilterInject$new(target = target_name), name = "target_name")
  22. withr::defer_parent(lg$remove_filter("target_name"))
  23. invisible(lg)
  24. }
  25. lg_info_target <- function(lg = .globals$logger) {
  26. target_name <- targets::tar_name()
  27. if (target_name == "target") return()
  28. lg$info("------ start: {target_name} ------")
  29. withr::defer_parent({
  30. lg$info("------ done: {target_name} ------")
  31. })
  32. invisible(lg)
  33. }