gpt4 book ai didi

r - 在 Shiny 的服务器上显示 R 控制台日志

转载 作者:行者123 更新时间:2023-12-02 08:52:12 28 4
gpt4 key购买 nike

我正在构建用于数据分析操作的 Shiny 应用程序。一切正常。

我想知道有什么方法可以显示日志,即 R Studio 中发生的事情。就像 print() 消息或任何 R 控制台正在打印的信息。我需要在 Shiny 的应用程序中以交互方式显示所有这些事件。

就像我们打印进度时一样,有没有办法附加进度消息而不是显示新消息。

我在实习生上搜索过,但找不到这方面的任何内容。

有人做过这样的事吗?任何善意的帮助都将不胜感激。

最佳答案

好吧,可能有一种更好的方法适用于您计算机上的 R & R Shiny 以及在服务器 -> 库(log4r)上运行的 R Shiny

library(log4r)
loggerDebug <- create.logger()
logfile(loggerDebug) <- 'data/debugData.log'
level(loggerDebug) <- 'INFO'

loggerServer <- create.logger()
logfile(loggerServer) <- 'data/serverData.log'
level(loggerServer) <- 'INFO'

# examples of levels
# debug(logger, 'A Debugging Message') # Won't print anything
# info(logger, 'An Info Message')
# warn(logger, 'A Warning Message')
# error(logger, 'An Error Message')
# fatal(logger, 'A Fatal Error Message')

确保服务器上有正确的读写权限,否则它将无法工作。 (请记住,R 服务器正在写入,而不是您)

# this depends on your security settings and rights
# talk to your UNIX ADMIN first
test <- list()
test$test <- "test"

# to change in linux / unix
system("chmod a+rwx /...pathToYourApp..../data")
system("chmod a+rwx /...pathToYourApp..../data/debugData.log")

info(loggerDebug, paste('| TEST |',test$test,"|"))

# close after write (for security):
system("chmod u=-x,g-x,o-rwx /...pathToYourApp..../data")
system("chmod u=-x,g-x,o-rwx /...pathToYourApp..../data/debugData.log")

为了更加安全,您可以这样做:

system("chattr +a /...pathToYourApp..../data/debugData.log")

这仅允许附加到文件,因此不能对现有内容进行修改。 (可以帮助说服 UNIX 管理员)

您可以在工作时打开日志文件,如果您使用 RStudio 或使用更动态的 self 更新包(例如 Sublime Text 或 ....),请务必刷新或重新打开该文件

我希望这对您有所帮助,也许您找到了更好的方法,请告诉我们

关于r - 在 Shiny 的服务器上显示 R 控制台日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28579711/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com