Javascript 在函数末尾检查执行错误的代码?
我已经创建了一个运行在google Sheets文件上的google应用程序脚本。每天早上9点左右,我的一个函数都会触发 每隔几天(我不知道为什么),但我会得到一个Javascript 在函数末尾检查执行错误的代码?,javascript,if-statement,debugging,google-apps-script,Javascript,If Statement,Debugging,Google Apps Script,我已经创建了一个运行在google Sheets文件上的google应用程序脚本。每天早上9点左右,我的一个函数都会触发 每隔几天(我不知道为什么),但我会得到一个 Execution Error: Service invoked too many times for one day: urlfetch 我已经放弃尝试解决这个问题,但是如果在我的函数结束时,我可以包含一些代码来检查是否有执行错误,如果是这样的话,运行另一个函数,例如 myfunction_9am() { <try
Execution Error: Service invoked too many times for one day: urlfetch
我已经放弃尝试解决这个问题,但是如果在我的函数结束时,我可以包含一些代码来检查是否有执行错误,如果是这样的话,运行另一个函数,例如
myfunction_9am() {
<try run some code>
if (execution Status = "Failed") { <<this is the bit I don't know how to code
myfunction_error();
}
}
myfunction_9am(){
如果(execution Status=“Failed”){应用程序脚本中的错误处理可以通过JavaScript和应用程序脚本疑难解答工具来处理
function myFunction() {
try{
//Some code
}catch(e) {
//Code to run only if there is an error
console.error("Error: " + e + "Stack: " + e.stack);//Send to StackDriver
myErrorHandlingFunction(e);
}
}
错误处理功能:
function myErrorHandlingFunction(e) {
var body,errMsg, recipient,stack;
if (!e) {
return;
}
errMsg = e.message;
stack = e.stack;
recipient = Session.getEffectiveUser().getEmail();
subject = "Error in Code";
body = 'The error is: ' + errMsg + "\n\nStack:" + stack;
GmailApp.sendEmail(recipient, subject, body);
}
括号中的字母e
是一个包含JavaScript错误消息的“异常对象”和“堆栈”。如果catch块运行代码,则执行失败。您不需要测试它是否失败。要获取错误消息,请使用e.message
,要获取堆栈,请使用e.stack
您可能希望向应用程序脚本堆栈驱动程序服务发送错误信息和/或通过自己的代码处理错误。使用尝试{//Some code}catch(e){//code仅在出现错误时运行}
括号中的字母e
是包含JavaScript错误消息的“异常对象”,以及“堆栈”如果catch块运行代码,则执行失败。您不需要测试它是否失败。要获取错误消息,请使用e.message
,要获取堆栈,请使用e.stack
。