
Collect useful information about the logging environment to be used in log messages
Source:R/layouts.R
get_logger_meta_variables.RdAvailable variables to be used in the log formatter functions, eg in layout_glue_generator():
Usage
get_logger_meta_variables(
log_level = NULL,
namespace = NA_character_,
.logcall = sys.call(),
.topcall = sys.call(-1),
.topenv = parent.frame(),
.timestamp = Sys.time()
)Arguments
- log_level
log level as per
log_levels()- namespace
string referring to the
loggerenvironment / 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
.topcallcalling function where the formatter function will be evaluated and that is used to look up thenamespaceas well vialogger:::top_env_name- .timestamp
The time the logging occured. Defaults to the current time but may be overwritten if the logging is delayed from the time it happend
Details
levelr: log level as an R object, egINFO()level: log level as a string, egINFO()time: current time asPOSIXctnode: name by which the machine is known on the network as reported bySys.infoarch: machine type, typically the CPU architectureos_name: Operating System's nameos_release: Operating System's releaseos_version: Operating System's versionuser: name of the real user id as reported bySys.infopid: the process identification number of the R sessionnode: name by which the machine is known on the network as reported bySys.infor_version: R's major and minor version as a stringns: namespace usually defaults toglobalor the name of the holding R package of the calling the logging functionns_pkg_version: the version ofnswhen it's a packageans: same asnsif there's a definedlogger()for the namespace, otherwise a fallback namespace (eg usuallyglobal)topenv: the name of the top environment from which the parent call was called (eg R package name orGlobalEnv)call: parent call (if any) calling the logging functionlocation: A list with elementpathandlinegiving the location of the log callfn: function's (if any) name calling the logging function
See also
Other log_layouts:
layout_blank(),
layout_gha(),
layout_glue(),
layout_glue_colors(),
layout_glue_generator(),
layout_json(),
layout_json_parser(),
layout_logging(),
layout_simple()