Pub/Sub 模板化数据流中的输入完全忽略了 NestedValueProvider
Pub/Sub input in templated Dataflow is completely ignoring NestedValueProvider
我为 Dataflow 创建了模板,它正在读取来自 Pub/Sub 的消息
问题是 NestedValueProvider 无法修改通过选项值发送,我不知道为什么 - 在某些屏幕下方
传递的参数:
代码:
结果:
如果有人问我为什么需要嵌套它 - 我只想要求添加 subscriptionID 并只添加带有路径其余部分的前缀..
编辑
我的步数:
1.Created 正在从 Pub/Sub 订阅和订阅名称读取的管道正在使用 NestedValueProvider 创建订阅名称
pipeline.apply(
"Read PubSub messages",
PubsubIO.readStrings().fromSubscription(
NestedValueProvider.of(
options.getSubscriptionID(),
input -> "projects/ozone-analytics-dev/subscriptions/" + input)
)
)
2.Created 模板
3.Running 具有有效和现有订阅 ID 的模板
4.Seeing 创建数据流作业时出现错误(我认为该作业甚至没有开始,这个错误是通过一些预验证导致的,因为我可以 运行 在本地或正常情况下使用 DataflowRunner 但不是通过模板)
分析后 - 这是 Google 仅与模板创建验证相关的数据流错误(因为数据流 运行 的所有其他方式均正常运行)
我已经为此创建了问题
https://issuetracker.google.com/u/1/issues/157584222
现在它就是这个问题的答案
我为 Dataflow 创建了模板,它正在读取来自 Pub/Sub 的消息 问题是 NestedValueProvider 无法修改通过选项值发送,我不知道为什么 - 在某些屏幕下方
传递的参数:
代码:
结果:
如果有人问我为什么需要嵌套它 - 我只想要求添加 subscriptionID 并只添加带有路径其余部分的前缀..
编辑
我的步数:
1.Created 正在从 Pub/Sub 订阅和订阅名称读取的管道正在使用 NestedValueProvider 创建订阅名称
pipeline.apply(
"Read PubSub messages",
PubsubIO.readStrings().fromSubscription(
NestedValueProvider.of(
options.getSubscriptionID(),
input -> "projects/ozone-analytics-dev/subscriptions/" + input)
)
)
2.Created 模板
3.Running 具有有效和现有订阅 ID 的模板
4.Seeing 创建数据流作业时出现错误(我认为该作业甚至没有开始,这个错误是通过一些预验证导致的,因为我可以 运行 在本地或正常情况下使用 DataflowRunner 但不是通过模板)
分析后 - 这是 Google 仅与模板创建验证相关的数据流错误(因为数据流 运行 的所有其他方式均正常运行)
我已经为此创建了问题 https://issuetracker.google.com/u/1/issues/157584222
现在它就是这个问题的答案