Learn R Programming

lgr (version 0.4.4)

event_list: A List of LogEvents

Description

An event_list is a class for list()s whose only elements are LogEvents. This structure is occasionally used internally in lgr (for example by AppenderBuffer) and can be useful for developers that want to write their own Appenders.

Usage

event_list(...)

as_event_list(x, ...)

# S3 method for list as_event_list(x, ..., scalarize = FALSE)

# S3 method for LogEvent as_event_list(x, ..., scalarize = FALSE)

# S3 method for data.frame as_event_list(x, na.rm = TRUE, ...)

as.data.table.event_list(x, na.rm = TRUE)

# S3 method for event_list as.data.frame( x, row.names = NULL, optional = FALSE, stringsAsFactors = FALSE, na.rm = TRUE, ... )

Value

an event_list() and as_event_list() return a flat list

of LogEvents. Nested lists get automatically flattened.

as.data.frame and as.data.table return a data.frame or data.table

respectively

Arguments

...

for event elements to be added to the list, for the as_*() functions parameters passed on to methods.

x

any R object

scalarize

logical scalar. Turn LogEvents with non-scalar msg field into separate log events

na.rm

remove NA values before coercing a data.frame to an event_list().

row.names

NULL or a character vector giving the row names for the data frame. Missing values are not allowed.

optional

currently ignored and only included for compatibility.

stringsAsFactors

logical scalar: should character vectors be converted to factors? Defaults to FALSE (as opposed to base::as.data.frame()) and is only included for compatibility.

Details

For convenience, as.data.frame() and as.data.table() methods exist for event lists.

See Also

Other docs relevant for extending lgr: LogEvent, as_LogEvent(), standardize_threshold()

Examples

Run this code
e <- LogEvent$new(level = 300, msg = "a", logger = lgr)
as_event_list(e)
as_event_list(c(e, e))
# nested lists get automatically unnested
as_event_list(c(e, list(nested_event = e)))

# scalarize = TRUE "unpacks" events with vector log messages
e <- LogEvent$new(level = 300, msg = c("A", "B"), logger = lgr)
as_event_list(e, scalarize = FALSE)
as_event_list(e, scalarize = TRUE)

Run the code above in your browser using DataLab