【发布时间】:2019-09-02 19:38:17
【问题描述】:
谁能指出正确使用option(error = function(...){}) 的最佳方式?我想将错误写入日志文件,然后像往常一样终止。目前我使用
options(error = function(...) {
#... write to logfile ...
options(error = NULL)
stop(geterrmessage())
})
但重新设置选项并再次调用stop() 对我来说似乎是一种黑客行为。我也试过q("no", status = 1, runLast = FALSE)(来自stop()的文档),但这似乎不等同于普通的stop()。例如,在 RStudio 服务器中,它会退出整个会话。
我需要使用option() 而不是tryCatch(),因为我想捕获脚本中可能出现的所有错误。我通过 cron 作业启动我的脚本,并且我想在脚本失败后立即获得电子邮件/日志条目。
【问题讨论】:
标签: r error-handling options