If used in ui of an application, this will create new inputs available in the server. Set dependencies = FALSE in track_usage server-side to load dependencies only once.

use_tracking(on_unload = FALSE, exclude_input_regex = NULL,
  exclude_input_id = NULL)

Arguments

on_unload

Logical, save log when user close the browser window or tab, if TRUE it prevent to create shinylogs input during normal use of the application, there will be created only on close, downside is that a popup will appear asking to close the page.

exclude_input_regex

Regular expression to exclude inputs from tracking.

exclude_input_id

Vector of inputId to exclude from tracking.

Note

The following inputs will be accessible in the server:

- .shinylogs_lastInput : last input used by the user

- .shinylogs_input : all inputs send from the browser to the server

- .shinylogs_error : all errors generated by outputs elements

- .shinylogs_output : all outputs generated from the server

- .shinylogs_browserData : information about the browser where application is displayed.

Examples

if (interactive()) { library(shiny) library(shinylogs) ui <- fluidPage( # Load tracking dependencies use_tracking(), splitLayout( cellArgs = list(style = "height: 250px"), radioButtons("radio", "Radio:", names(iris)), checkboxGroupInput("checkbox", "Checkbox:", names(iris)), selectInput("select", "Select:", names(iris)) ), tags$p("Last input used (name correspond to inputId:"), verbatimTextOutput("last") ) server <- function(input, output, session) { output$last <- renderPrint({ input$.shinylogs_lastInput }) } shinyApp(ui, server) }