微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Google Cloud 获取 API Key 的日志使用信息

如何解决Google Cloud 获取 API Key 的日志使用信息

我正在构建一个聊天并具有云翻译 API 的功能,我为每个客户端创建了一个新的 API 密钥,以便能够识别每个客户端的消费使用情况,问题如下:

我想查看项目中所有 API 密钥的使用情况,例如操作日志:

Example of Operations logging

但要透露时间戳和 API 密钥名称的使用信息,以便我能够跟踪每个客户端对服务的使用情况,并确定我要向他们收取多少费用。

更新

this article 进行了一些额外的研究,它提供了一个演练以了解服务帐户密钥(类似于但不是我需要的)。在本指南中,他们创建了一个日志接收器来将日志推送到 BigQuery。

现在的问题是用于提取日志的过滤器如下:

logName:"projects/<PROJECT>/logs/cloudaudit.googleapis.com" 
protoPayload.authenticationInfo.serviceAccountKeyName:"*"

属于服务帐户密钥名称的第二行提取日志。但正如问题开头所说,我正在寻找 API 密钥日志,而不是服务帐户密钥。

解决方法

您可以使用 Cloud Audit 日志 1 ,Cloud Audit Logs 为每个 Cloud 项目、文件夹和组织提供以下审核日志:

-管理员活动审核日志

-数据访问审核日志

-系统事件审核日志

-策略拒绝审核日志

Google Cloud 服务将审核日志条目写入这些日志中,以帮助您回答“谁在何处、何时何地做了什么?”的问题。在您的 Google Cloud 资源中。

对于这种情况,数据访问审核日志 2 可能会有所帮助,它包含读取资源配置或元数据的 API 调用,以及创建、修改或读取用户的用户驱动的 API 调用 -提供资源数据。数据访问审核日志不会记录对公开共享(可供所有用户或所有经过身份验证的用户使用)或无需登录 Google Cloud 即可访问的资源的数据访问操作。

正如之前的评论中提到的,默认情况下禁用此日志,因为它们可能非常大;它们必须明确启用才能写入。

但是,查看 API 指标的最简单方法是使用 Google Cloud Console 的 API 信息中心 3。您可以查看所有 API 使用情况的概览,也可以深入查看特定 API 的使用情况。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。