0

您如何正确地将日志从 Google Workflows 发送到 Stackdriver?

根据我创建的文档:

- logStep1:
       call: sys.log
       args:
         text: "Step 2 launched accordingly"
         severity: INFO

工作流程按预期启动并完成,但是,当我进入 stackdriver 查找我的日志条目时,它没有显示,只有“审核的日志”,其余的找不到。

Google 文档说明了查找这些日志的某些步骤,但即使是:resource.type="workflows.googleapis.com/Workflows"在堆栈驱动程序过滤器中也被标记为不正确。

我希望在蓝色图标 (INFO) 条目下看到我的文本有效负载,但可惜不存在。

我在日志步骤中遗漏了什么吗?

使用的资源: https ://cloud.google.com/workflows/docs/troubleshooting#sending-logs

4

1 回答 1

1

重新阅读文档后,它声明它需要 Log Writer 权限,我认为权限将从调用者那里继承,但事实并非如此,一旦必须创建一个具有所有必需权限的特定服务帐户,包括 Log Writer或日志管理员能够将信息发送到 Stackdriver 事件流。

因此,要解决此问题,请检查:

  1. 您有一个手工制作的服务帐户,而不是自动生成的服务帐户。
  2. 该 SA 具有访问您的端点和日志写入能力所需的所有 API 和权限。
  3. 创建流时,必须使用创建的 SA(而不是生成的 SA)
  4. 尝试一下。

我已经对此进行了多次测试,并且可以正常工作。

于 2021-02-10T15:59:49.783 回答