我正在尝试通过运行在带有RBAC的GCP / GKE集群上的我们的kubernetes部署之一,将Node.js错误报告给Google错误报告。 (即在与群集相关联的服务帐户中定义的权限)
const googleCloud = require('@google-cloud/error-reporting');
const googleCloudErrorReporting = new googleCloud.ErrorReporting();
googleCloudErrorReporting.report('[test] dummy error message');
这仅在某些环境中有效:
ERROR:@ google-cloud / error-reporting:在尝试将错误传输到Stackdriver Error Reporting API时遇到错误。
错误:请求的身份验证范围不足。
感觉这项工作确实获得了群集服务帐户的权限更改,而我的部署却没有。
我确实尝试重新创建部署以使其刷新其身份验证令牌,但错误仍在发生...
有什么想法吗?
更新:我最终遵循Jérémie Girault's suggestion:创建一个服务帐户并将其绑定到我的部署中。可行!
答案 0 :(得分:1)
该错误消息与使用默认服务帐户时在群集上设置的访问范围有关。您必须启用对相应API的访问。
正如您提到的,创建一个单独的服务帐户,为其提供适当的IAM权限并将其链接到您的群集或工作负载也将绕过此错误。