by Kamil Wais
Logging Events in Complex Shiny Apps. Logging framework dedicated for complex shiny apps. Different types of events can be logged (character string, value of a variable, multi-line output of a function, result of a unit test, custom error, warning, or diagnostic message). Each event can be logged with a list of parameters that are event-specific, common for a group of events, or common for all app events. Logging can be done simultaneously to R console, browser JavaScript console, a file log, and a database (currently MongoDB). Log data can be further analyzed with the help of process-mining techniques from 'bupaR' package.
install.packages("shinyEventLogger")
# install.packages('devtools')
devtools::install_github("kalimu/shinyEventLogger")
Simple app logging different events to R console, browser JavaScript console and to a file.
shinyEventLogger::run_demo()
Dashboard that allows for interactive analysis of events from demo app.
shinyEventLogger::run_demo_dashboard()
library(shiny)
library(shinyEventLogger)
set_logging()
shinyApp(
ui = fluidPage(log_init()),
server = function(input, output) {
set_logging_session()
log_event("Hello World")
}
)
Executing the code above you should see in the console something like this:
|#1|EVENT|Hello World|FIRED|
- DemoApp -- demo shiny app logging different types of events.
- DashboardApp -- demo dashboard showing examples how logged events from the
DemoApp
can be analyzed
Package docs (pkgdown
): https://kalimu.github.io/shinyEventLogger/index.html
Project description (on homepage): https://kalimu.github.io/project/shinyeventlogger/
For other logging packages see: https://github.com/daroczig/logger