INVALID_ARGUMENT(400 错误)调用 Stackdriver 错误报告时 API

INVALID_ARGUMENT (400 error) when calling Stackdriver Error Reporting API

尝试调用 Stackdriver Error Reporting API (via the API explorer or via the Client-Side JavaScript library) 时,我收到以下错误:

要求:

{ "message" : "test" }

回复:

{
  "error": {
    "code": 400,
    "message": "Request contains an invalid argument.",
    "status": "INVALID_ARGUMENT"
  }
}

Stackdriver 错误报告 API 已启用,我拥有 App Engine 项目的所有者权限。

是 API 根本不起作用吗?如果我做错了什么,有人可以帮忙吗?

报告事件的文档说 ServiceContext is required

如果您只是发送一条消息(不是堆栈跟踪/异常),您还需要包含一个 context with a reportLocationmessage 字段的文档中对此进行了说明,但并不明显。

来自 API 浏览器的以下作品:

{
 "context": {
  "reportLocation": {
   "functionName": "My Function"
  }
 },
 "message": "error message",
 "serviceContext": {
  "service": "My Microservice",
 }
}

您可能也对 How Error are Grouped 上的文档感兴趣。

FWIW,我在研究这个产品,我认为错误消息太笼统了。问题是(?)服务堆栈会擦除消息,除非它们被注释为用于 public 消费。我会追下去的。