嗯,可能有更好的方法适用于您计算机上的 R & R Shiny 和在服务器上运行的 R Shiny -> 库(log4r)
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 Server 正在编写,而不是您)
# 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 ADMIN)
您可以在工作时打开日志文件,如果您使用 RStudio 或使用更动态的包来更新自身(如 Sublime Text 或 ....),请务必刷新或重新打开该文件
希望对你有帮助,或许你找到了更好的方法,告诉我们