Google apps script 分析Google应用程序脚本的性能
我已经编写了一个谷歌应用程序脚本,将谷歌分析数据拉入谷歌电子表格。这是一个相当长的运行脚本,向GA Reporting API发出多个请求,它还使用Google应用程序的ScriptDBGoogle apps script 分析Google应用程序脚本的性能,google-apps-script,google-analytics,google-sheets,profiling,google-analytics-api,Google Apps Script,Google Analytics,Google Sheets,Profiling,Google Analytics Api,我已经编写了一个谷歌应用程序脚本,将谷歌分析数据拉入谷歌电子表格。这是一个相当长的运行脚本,向GA Reporting API发出多个请求,它还使用Google应用程序的ScriptDB 是否有一种很好的方法来分析脚本性能的每一步,这样我就可以找出哪些方面花费的时间最长,这样我就可以开始在某些方面进行优化了?执行记录对于这类事情非常有用 您还可以将Logger.log()语句放在测量自上次日志以来的时间的所有位置。这样,您可以找到需要更长时间执行的区域 我有一个脚本,在执行后复制日志,然后公式+
是否有一种很好的方法来分析脚本性能的每一步,这样我就可以找出哪些方面花费的时间最长,这样我就可以开始在某些方面进行优化了?执行记录对于这类事情非常有用 您还可以将
Logger.log()
语句放在测量自上次日志以来的时间的所有位置。这样,您可以找到需要更长时间执行的区域
我有一个脚本,在执行后复制日志,然后公式+条件格式帮助我识别速度较慢的区域。作为对Fred答案的补充,在脚本顶部定义一个变量
start
var start = new Date().getTime();
然后在几个Logger.log()
中放置了一个战略点
Logger.log(new Date().getTime()-start);
您将非常清楚发生了什么…要更正Serge的答案,当调用日期函数出现问题时,您可以使用此解决方案
function myFunction() {
var start_time = new Date().getTime();
/*
your code goes here
*/
Logger.log('Total execution time is :' + (new Date().getTime()-start_time) + ' ms');
}
您可以用代码替换注释行。执行后,按Ctrl+Enter或Command⌘ + 进入Mac查看日志。您将得到如下结果:
[17-01-18 12:25:58:932 UTC]总执行时间为:16586毫秒
所以这里的总执行时间是16586毫秒,或者换句话说是16.586秒
除上述内容外,您还可以在代码之间添加以下代码段,以测量不同部分的执行时间
Logger.log('Execution time till checkpoint 1:' + (new Date().getTime()-start_time) + ' ms');
您可能应该使用这些方法,因为在使用
Date
时可能会得到负面结果,所以基本工具是and(在前面的答案中提到)
现在我们可以使用和类控制台,包括和
为了让事情变得更好,我们还可以通过BigQuery将Stackdriver日志发送到GoogleDataStudio,这样我们就可以建立有用的指标来跟踪分析数据
参考资料