【问题标题】:Monitor Google API usage programmatically?以编程方式监控 Google API 使用情况?
【发布时间】:2020-06-22 09:54:30
【问题描述】:

https://console.cloud.google.com/apis/dashboard 如果我们打开谷歌控制台,我们会看到每个服务已经完成了多少请求。有没有办法导出这些计数器?我找不到任何负责这些计数器的 API。

Get google maps api usage info Detect Google Maps Javascript API limit for map loads

多年过去了,仍然无法设置 API 使用警报?如果没有编程访问,可能有一些方法可以在 API 使用率高于阈值时设置警报?

【问题讨论】:

    标签: google-maps google-api google-developers-console


    【解决方案1】:

    正如第一个答案所述,没有这样的 API 可以监控这些使用情况,但有几种方法可以监控您的使用情况:

    1. 设置Budget Alerts,如果您在一个月内达到指定预算的一定金额,这将触发通知,但请注意,这只会通知您,并不会在指定金额后实际停止使用。

    2. 如果您想监控或了解您的日常使用情况,您可以在 BigQuery Export 的帮助下实施我们所说的 channels。这将为您提供每日使用情况的细分报告。您可以使用 BigQuery 导出检索此类报告的标准 SQL 代码是:

    SELECT Date(usage_start_time, "America/Los_Angeles") AS billing_day,
             invoice.month AS invoice_month,
             service.description 作为服务,
             sku.description 作为 sku,
             (
                    选择左值
                    FROM Unnest(labels) AS l
                    WHERE l.KEY = 'goog-maps-channel' ) 作为 goog_maps_channel,
             Round(Sum(usage.amount), 2) AS usage_amount,
             使用单位作为使用单位,
             Round(Sum(cost), 2) AS 成本,
             成本类型,
             货币
    FROM `PROJECT_ID.DATASET_NAME.gcp_billing_export_v1_BILLING_ACCOUNT_ID`
    WHERE invoice.month = '201906' -- 更改发票月份,格式与示例相同。
    GROUP BY billing_day,
             发票月,
             服务,
             货号,
             goog_maps_channel,
             使用单位,
             成本类型,
             货币
    ORDER BY billing_day,
             服务,
             库存单位
    

    您可以详细了解如何设置 BigQuery 导出 here

    1. 如果您想将每天的使用量限制在一定数量,您还可以实现 Capping of API usage,其中它只允许 API 每天调用特定数量的请求。

    如果您需要帮助以正确计算每个 API 的每日请求数以使其符合特定预算,您可以联系 Google Maps Platform API 的支持团队here

    【讨论】:

    • 我认为预算是目前最好的方式。
    猜你喜欢
    • 2011-02-08
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多