【问题标题】:GCP StackDriver RESTful API not logging even though it returns a 200GCP StackDriver RESTful API 没有记录,即使它返回 200
【发布时间】:2020-04-08 15:41:30
【问题描述】:

我已启用 GCP 监控并且可以看到记录器视图。我希望使用 RESTful api 将日志发送到 Stackdriver。

我得到了一个令牌,这表明我得到了正确的 JWT 设置。

我使用以下 JSON 及以上令牌发出请求,并获得 200 的回报。然而没有日志条目。任何建议将不胜感激。

{


"logName": "projects/myProject/logs/myLogGroup",
  "resource": {
    "type": "api"
  },
  "labels": {
    "zone": "us-central1-a"
  },
  "entries": [
    {
      "severity": "INFO",
      "textPayload": "Unsent log message boo"
    }
  ],
  "partialSuccess": true
}

我已经在文档中使用了带有上述消息的 Google API 帮助程序。以及 PAW(像邮递员)来制作我自己的所有请求。始终为 200,并且从不记录任何消息。

所有参数都是正确的,因为如果我更改了诸如 logName 或资源类型之类的任何内容,我会收到错误“不支持资源类型:”所以我有信心按摩是正确的。

我正在查看 GCP 网站上的日志,我转到左侧汉堡菜单中 logger 下的日志查看器。关闭所有过滤器并将日志级别设置为显示所有级别。

【问题讨论】:

  • 您能否详细说明您是如何检查 Stackdriver 日志以确定没有写入日志条目的?
  • @Kolban 我要去 GPC 控制台上的记录器视图,禁用所有过滤器并显示所有日志级别
  • 你好 ... 在过滤器栏上,选择最右侧的下拉菜单并选择“转换为高级过滤器”。确保清除过滤器条目。点击提交过滤器。
  • @Kolban 就是这样。请将其添加为答案。

标签: logging google-cloud-platform stackdriver


【解决方案1】:

当您通过 Cloud Console 查看 Stackdriver 日志时,使用的工具名为“Logs Viewer”。此 Web 界面查看器有两种主要模式。

第一种模式是引导式演示,您可以在其中选择要呈现的高级功能数据源。这些是用自然语言描述的(例如云函数),并从下拉菜单中选择。

第二种模式是实际使用的底层技术。这是通过选择过滤器区域中的下拉菜单来实现的,该下拉菜单称为“转换为高级过滤器”。现在,您将看到应用于 Stackdriver 数据检索的底层(原始)过滤器。

如果您清除这些过滤器,您现在将看到所有从所有来源收集的日志记录。如果您认为正在记录日志记录,但在向导驱动的方法中找不到它们,这可能很有用。您可以看到所有正在记录的日志记录,从而生成您想要的日志记录,然后在未过滤的集合中看到它。这通常会给您带来“啊哈”的时刻,您现在可以看到可以在未来过滤器中使用的字段。

【讨论】:

  • 但为什么默认视图不是所有日志。谢谢你的回答芽
猜你喜欢
  • 1970-01-01
  • 2022-10-17
  • 2017-09-07
  • 1970-01-01
  • 1970-01-01
  • 2021-06-27
  • 1970-01-01
  • 2017-04-22
  • 2017-09-16
相关资源
最近更新 更多