如何在Google Cloud Metrics Explorer测量Firebase云函数冷启动时间
测量Firebase Cloud Functions冷启动时间的操作方法
你找到的execution_time指标(完整指标名为cloudfunctions.googleapis.com/function/execution_times)本身已经包含了冷启动场景下实例初始化、依赖加载、全局代码执行的全部耗时,该指标统计的是从实例收到触发请求到请求处理完成的全链路耗时,热启动场景下仅统计业务逻辑执行耗时。
你可以按照以下步骤在Metrics Explorer中单独提取冷启动的耗时数据:
- 打开Metrics Explorer后,首先选择指标分类为「Cloud Function > Function > Execution times」
- 为指标添加过滤器,筛选
metric.labels.cold_start=true,该标签是Cloud Functions原生提供的标签,无需自行埋点即可标记本次调用是否触发了冷启动 - 根据你的统计需求选择聚合方式,常用的有平均值、p50、p95、p99分位数,即可得到对应时间段的纯冷启动耗时统计结果
- 对比优化前后效果时,可将时间范围分别选定为优化上线前、上线后相同长度的周期,直接对比两个周期的冷启动耗时统计值即可
如果需要进一步拆分冷启动中初始化依赖和执行业务逻辑的占比,可以自行在代码中增加简单的时间戳埋点:在全局代码最顶部记录初始时间戳存储为全局变量,在函数入口处、函数执行完成处分别记录时间戳,即可分别计算出依赖加载耗时、业务逻辑执行耗时,二者加总与Metrics中的execution_time指标数值一致。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

