如何在代码的任何部分捕获异常并在 R 中执行某些操作?
How can I catch exceptions in any part of code and do something in R?
我想在代码引发错误时调用短信 API。
详细地说,我们的服务器上有很多 cron 作业,为了维护,我想知道这些代码中的任何一个何时中断。
所以我想在发生错误时给自己发短信。
我无法使用 try catch,因为我不知道哪部分代码可能会出错。
提前致谢。
您正在寻找的可能是设置自定义错误处理程序。您可以通过设置名为 error
的选项来做到这一点,默认情况下它是 NULL
(除非您使用的是 RStudio)。
您可以例如将此类代码添加到您的 .Rprofile
:
options(error = function() {
your_function_to_send_sms(geterrmessage())
})
geterrmessage()
是访问最后一条错误消息的函数。您可以查看 options
和 geterrmessage
的文档了解详细信息。
我个人并没有广泛使用它,我已经编写了一个简单的代码,在某些情况下将错误转储到外部文件。
我想在代码引发错误时调用短信 API。 详细地说,我们的服务器上有很多 cron 作业,为了维护,我想知道这些代码中的任何一个何时中断。
所以我想在发生错误时给自己发短信。
我无法使用 try catch,因为我不知道哪部分代码可能会出错。
提前致谢。
您正在寻找的可能是设置自定义错误处理程序。您可以通过设置名为 error
的选项来做到这一点,默认情况下它是 NULL
(除非您使用的是 RStudio)。
您可以例如将此类代码添加到您的 .Rprofile
:
options(error = function() {
your_function_to_send_sms(geterrmessage())
})
geterrmessage()
是访问最后一条错误消息的函数。您可以查看 options
和 geterrmessage
的文档了解详细信息。
我个人并没有广泛使用它,我已经编写了一个简单的代码,在某些情况下将错误转储到外部文件。