我的脚本有几个try-catch块,它发送有关错误消息的电子邮件。它可以工作,但只发送一行简单的错误消息。我想要的是错误周围的行号和更具描述性的消息,以帮助我确定错误发生的位置。
答案 0 :(得分:10)
你可以尝试这个(我偷了它),第一个将catched异常中的所有信息转换为字符串。第二个函数可以用来包装一些代码,如果它抛出一个excetopn就把它写在某个地方。
function catchToString (err) {
var errInfo = "Catched something:\n";
for (var prop in err) {
errInfo += " property: "+ prop+ "\n value: ["+ err[prop]+ "]\n";
}
errInfo += " toString(): " + " value: [" + err.toString() + "]";
return errInfo;
}
function catched (f) {
try {
f ();
}
catch(err) {
Logger.log (catchToString (err));
}
}
答案 1 :(得分:0)
我正在使用Romain Vialard创建的库
https://github.com/RomainVialard/ErrorHandler
try
{
// function
}
catch(error)
{
if (ErrorHandler) // library is installed
{
ErrorHandler.logError(error);
}
else
{
Logger.log(error);
}
}