Format a log record as the logging package does by default
Usage
layout_logging(
level,
msg,
namespace = NA_character_,
.logcall = sys.call(),
.topcall = sys.call(-1),
.topenv = parent.frame()
)
Arguments
- level
log level, see
log_levels()
for more details- msg
string message
- namespace
string referring to the
logger
environment / config to be used to override the target of the message record to be used instead of the default namespace, which is defined by the R package name from which the logger was called, and falls back to a common, global namespace.- .logcall
the logging call being evaluated (useful in formatters and layouts when you want to have access to the raw, unevaluated R expression)
- .topcall
R expression from which the logging function was called (useful in formatters and layouts to extract the calling function's name or arguments)
- .topenv
original frame of the
.topcall
calling function where the formatter function will be evaluated and that is used to look up thenamespace
as well vialogger:::top_env_name
See also
Other log_layouts:
get_logger_meta_variables()
,
layout_blank()
,
layout_glue()
,
layout_glue_colors()
,
layout_glue_generator()
,
layout_json()
,
layout_json_parser()
,
layout_simple()
Examples
log_layout(layout_logging)
log_info(42)
#> 2024-10-21 07:31:17 INFO::42
log_info(42, namespace = "everything")
#> 2024-10-21 07:31:17 INFO:everything:42
if (FALSE) { # \dontrun{
devtools::load_all(system.file("demo-packages/logger-tester-package", package = "logger"))
logger_tester_function(INFO, 42)
} # }