我有一个闪亮的应用程序已经在shinyapps.io上托管了一段时间。
我下载了应用并在本地进行了测试,其中一项功能的表现略有不同。我相信这是由于某些库的不同版本。
我想知道是否有办法检查已部署应用的库的版本,以便我可以在本地安装并检查。
答案 0 :(得分:3)
我有一个应用程序,我在内部shiny-server
上使用这个应用程序进行故障排除 - 显示系统信息,库路径,环境变量和包版本。
只有可能导致问题的事情 - 我不确定shinyapps.io是否允许您出于安全原因使用所有系统功能?
library(shiny)
library(shinydashboard)
# UI----------------------------------------------------------------------------
ui <- dashboardPage(
title = "Test Local App Config",
dashboardHeader(title = "Local App Config"),
dashboardSidebar(
sidebarMenu(id = "sidebarmenu",
menuItem("Main", tabName = "main", icon = icon("dashboard")
) ## end sidebarMenu
) ## end dashboardSidebar
),
# UI Body --------------------------------------------------------------------
dashboardBody(
tabItems(
tabItem(tabName = "main",
fluidRow(
column(width = 6,
box(
title = "Sys.info()",
status = "primary",solidHeader = TRUE,width = NULL,
shiny::tableOutput("info")
),
box(
title = ".libPaths()",
status = "primary",solidHeader = TRUE,width = NULL,
shiny::tableOutput("libpaths")
),
box(
title = "Sys.getenv()",
status = "primary",solidHeader = TRUE,width = NULL,
shiny::tableOutput("getenv")
)
),
column(width = 6,
box(
title = "Packages",
status = "primary",solidHeader = TRUE,width = NULL,
shiny::tableOutput("packages")
))
)
) ## end tabItem "main"
) ## end tabItems
) ## end dashboardBody
) ## end dashboardPage
# Server ------------------------------------------------------------------------
server <- function(input,output){
output$info <- renderTable({
data.frame(Variable = names(Sys.info()),
Value = as.character(Sys.info()))
})
output$libpaths <- renderTable({
data.frame(Paths = as.character(.libPaths()))
})
output$getenv <- renderTable({
data.frame(Variable = names(Sys.getenv()),
Value = as.character(Sys.getenv()))
})
output$packages <- renderTable({
data.frame(installed.packages())[,.(Package,Version,Built,LibPath)]
})
}
shinyApp(ui = ui, server = server)
答案 1 :(得分:2)
我刚刚发现:当您从shinyapps.io下载应用程序时,您会在名为“manifest.json”的根文件夹中获得一个json文件,其中包含有关已加载库的所有信息。