Skip to content

kalimu/shinyEventLogger

Repository files navigation

shinyEventLogger

Licence Lifecycle Travis build status CRAN Status Monthly downloads badge Daily downloads badge Weekly downloads badge HitCount

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.

Installation

Installing stable version from CRAN

install.packages("shinyEventLogger")

Installing version in development from GitHub

# install.packages('devtools')
devtools::install_github("kalimu/shinyEventLogger")

Demo Apps

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()

Hello World

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|

Demo Shiny Apps

  • DemoApp -- demo shiny app logging different types of events.
  • DashboardApp -- demo dashboard showing examples how logged events from the DemoApp can be analyzed

Documentation

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