【问题标题】:Is there any way to break down my Google Cloud Functions spending into each one of my functions?有没有办法将我的 Google Cloud Functions 支出分解为我的每个功能?
【发布时间】:2021-07-27 23:04:02
【问题描述】:

我想知道我的每个云功能的花费是多少(分解显示在我的结算控制台中的 Google Cloud Functions 的总成本)。我知道我可能可以通过查看每个功能的指标和配置来估计它,但是要一个一个来做会很麻烦(我有很多功能)。

我找不到任何单独使用结算控制台的方法,它只显示总费用。

如果有工具/脚本也将不胜感激。

【问题讨论】:

    标签: google-cloud-functions serverless cost-management google-cloud-billing


    【解决方案1】:

    你需要add labels on each of your functions (more about labels) 和下沉billing in BigQuery

    现在,您将能够在 BigQuery 中找到每个 Cloud Functions 标签的成本。创建仪表板以查看摘要,例如 datastudio

    【讨论】:

    • 谢谢,我忽略了标签的事情,因为在介绍中它提到了实例(计算实例),所以我认为它只适用于这些资源。此外,我找不到在 Cloud Functions 仪表板中分配标签的方法。我会尝试使用 API 或 cli,我想这样是可能的。
    • 对于来到这里的每个人,我发现可以使用gcloud functions deploy 命令添加标签,但我无法使用firebase deploy 命令(这是我使用的命令)添加标签。所以我想我会使用其余的 api。
    • 这里应该注意的是,该解决方案的 BigQuery 部分不是必需的。添加标签后,您可以在结算控制台中按标签进行分组。
    • 您之前无法在控制台中使用标签进行过滤!
    【解决方案2】:

    我不知道 Billing 中是否有任何工具可以帮助您实现所追求的目标。而且我不认为 Google 的基础架构是为您所追求的而设置的。

    Cloud Function Pricing 文档详细说明了定价的分解方式。

    但请注意,您的 Cloud Functions 实际上是 deployed inside of a single (kubernetes) container 并在 GCP 内部运行。 GCP 基础设施能够监控该容器的 CPU 使用情况,并监控对您的 Cloud Functions 的各个调用,但我强烈怀疑它是否正在监控每个函数调用的 CPU 使用情况(考虑项目中的复杂程度)哪里有高负载/并发......那怎么工作?)

    您的问题特定于解决问题的特定方法。我建议您详细说明根本问题是什么,看看是否有不同于“Google Billing 分解云功能成本”的解决方案。

    【讨论】:

    • 我认为根本问题是我们有很多团队(每个团队都在做一个单独的“项目”)使用同一个 GCP 项目,我们需要分开每个团队产生的成本。每个团队都部署了一堆功能。
    • 顺便说一句,我不确定我的所有函数是否都在一个容器中,如果这就是你的意思,因为据我了解,谷歌为每个云上的每个并发请求创建一个新容器实例功能。每个实例一次只能处理一个请求cloud.google.com/functions/docs/max-instances
    • 我没有看到任何证据表明 Cloud Functions 即服务在项目级内存、CPU、调用和网络之外存在故障。我的经验和他们的文档让我想到 GCP 的“项目”是我期望从他们提供的服务中获得的粒度级别。似乎您的团队已决定使用单个 GCP 项目来执行多个“子项目”,现在正在努力解决计费粒度问题。我很想知道您是否找到解决方案。我没有看到通往其中的道路。
    • 标签是解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-12
    • 1970-01-01
    • 1970-01-01
    • 2020-06-19
    • 2022-10-04
    • 1970-01-01
    • 2020-12-07
    相关资源
    最近更新 更多