激活从 Workflows 到 Stackdriver 的日志
Activate logs from Workflows to Stackdriver
如何从 Google 工作流正确地将日志发送到 Stackdriver?
根据我创建的文档:
- logStep1:
call: sys.log
args:
text: "Step 2 launched accordingly"
severity: INFO
工作流按预期启动和完成,但是,当我进入 stackdriver 查找我的日志条目时,它没有显示,只有“审核日志”,其余部分无处可寻。
Google 文档说明了查找这些日志的某些步骤,但即使是:resource.type="workflows.googleapis.com/Workflows"
在 stackdriver 过滤器中也被标记为不正确。
我希望在蓝色图标 (INFO) 条目下看到我的文本有效负载,但遗憾的是,不存在。
我在日志步骤中是否遗漏了什么?
使用的资源:
https://cloud.google.com/workflows/docs/troubleshooting#sending-logs
重新阅读文档后说它需要 Log Writer 权限,我以为权限会从调用者那里继承,但事实并非如此,一旦必须创建一个特定的服务帐户,所有需要的权限,包括能够将信息发送到 Stackdriver 事件流的 Log Writer 或 Log Admin。
因此,要解决此问题,请检查:
- 您有一个手工制作的服务帐户,而不是自动生成的帐户。
- 该 SA 拥有所有必要的 API 和访问您的端点的权限以及日志写入能力。
- 创建流时必须使用创建的 SA(而不是生成的 SA)
- 试一试。
我已经测试了好几次,都有效。
如何从 Google 工作流正确地将日志发送到 Stackdriver?
根据我创建的文档:
- logStep1:
call: sys.log
args:
text: "Step 2 launched accordingly"
severity: INFO
工作流按预期启动和完成,但是,当我进入 stackdriver 查找我的日志条目时,它没有显示,只有“审核日志”,其余部分无处可寻。
Google 文档说明了查找这些日志的某些步骤,但即使是:resource.type="workflows.googleapis.com/Workflows"
在 stackdriver 过滤器中也被标记为不正确。
我希望在蓝色图标 (INFO) 条目下看到我的文本有效负载,但遗憾的是,不存在。
我在日志步骤中是否遗漏了什么?
使用的资源: https://cloud.google.com/workflows/docs/troubleshooting#sending-logs
重新阅读文档后说它需要 Log Writer 权限,我以为权限会从调用者那里继承,但事实并非如此,一旦必须创建一个特定的服务帐户,所有需要的权限,包括能够将信息发送到 Stackdriver 事件流的 Log Writer 或 Log Admin。
因此,要解决此问题,请检查:
- 您有一个手工制作的服务帐户,而不是自动生成的帐户。
- 该 SA 拥有所有必要的 API 和访问您的端点的权限以及日志写入能力。
- 创建流时必须使用创建的 SA(而不是生成的 SA)
- 试一试。
我已经测试了好几次,都有效。