You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Cloud Platform (GCP)中统计Cloud Functions (CF)的失败率并实现监控与报告?GCP Monitoring是否提供内置支持?

如何在GCP中监控Cloud Functions的累计失败率并生成报告

嘿,这个需求完全可以通过GCP Monitoring来实现,而且大部分都是内置功能,不用额外写太多代码。我来给你一步步拆解具体怎么做:

核心逻辑:利用内置Metrics计算失败率

GCP Cloud Functions本身就提供了两个关键的内置Metrics,刚好满足你的失败率计算需求:

  • function/execution_count:累计执行的Cloud Functions次数(计数器类型,会持续累加)
  • function/execution_errors:累计执行失败的次数(同样是计数器类型)

你需要的失败率公式(总失败数)/(总执行数),直接通过这两个Metrics的聚合查询就能实现。

步骤1:构建失败率查询(Metrics Explorer)

  1. 打开GCP Console的Monitoring > Metrics Explorer
  2. 在查询编辑器里,选择以下配置:
    • 资源类型:Cloud Function
    • 指标:分别找到function/execution_count和function/execution_errors
  3. 用PromQL风格的表达式组合这两个指标,实现失败率计算:
    • 如果要计算累计所有时间的失败率(比如从函数上线到现在):
      sum(function/execution_errors) / sum(function/execution_count)
      
    • 如果要计算指定时间范围内的失败率(比如你例子中的两天总和),可以用时间窗口聚合:
      sum_over_time(function/execution_errors[2d]) / sum_over_time(function/execution_count[2d])
      
    • 要是想按天查看每日失败率趋势,就把窗口改成[1d],图表选折线图即可
  4. 可以添加过滤条件,比如只监控特定前缀的函数:resource.labels.function_name=~"your-function-.*"

步骤2:创建自定义仪表盘

把上面的查询保存到自定义仪表盘里,方便日常查看:

  1. 在Metrics Explorer里点击添加到仪表盘
  2. 选择现有仪表盘或者创建新的,设置图表类型(比如数值卡片展示当前失败率,折线图展示趋势)
  3. 可以添加其他相关指标(比如执行延迟、队列消息数),组成完整的监控视图

步骤3:设置告警规则(可选)

如果需要在失败率超过阈值时收到通知:

  1. 打开Monitoring > Alerting > Create Policy
  2. 选择刚才的失败率查询作为告警条件,设置阈值(比如超过5%触发告警)
  3. 配置通知渠道(邮件、Slack、PagerDuty等),设置告警的严重级别

步骤4:生成定期报告

GCP Monitoring支持自动生成并发送报告,满足你的报告需求:

  1. 打开Monitoring > Reports > Create Report
  2. 添加之前创建的失败率图表,还可以加入其他监控指标
  3. 设置报告的调度规则(比如每日/每周固定时间发送),选择收件人邮箱
  4. 预览并保存报告,之后系统会自动按时发送

关于内置功能的说明

完全不需要额外开发,GCP Monitoring本身就支持这些能力:

  • 内置的Cloud Functions Metrics覆盖了执行成功/失败的核心数据
  • 支持自定义PromQL查询来聚合计算失败率
  • 仪表盘、告警、报告都是原生内置功能,直接配置即可

内容的提问来源于stack exchange,提问作者Hossein Kalbasi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 22:08:10