python数据流作业在部署后使用requirements_file参数后不接受来自pubsub订阅的消息
Posted
技术标签:
【中文标题】python数据流作业在部署后使用requirements_file参数后不接受来自pubsub订阅的消息【英文标题】:python dataflow job not accepting messages from a pubsub subcription after using requirements_file parameter after while deploying 【发布时间】:2021-01-11 22:36:48 【问题描述】:我想在写入大查询之前使用数据流作业加密来自 pubsub 订阅的消息。我正在使用 pycryptodome==3.9.8, cryptography==3.1 python 库来做到这一点。
在数据流作业中,我使用以下两个导入
从加密导入随机 从 Crypto.Cipher 导入 AES
当我尝试在没有 --requirements_file 参数的情况下部署数据流管道时。它部署完美,但在向主题发布消息后会引发错误
ModuleNotFoundError: No module named 'Crypto' [while running 'generatedPtransform-81']
之后,我尝试使用 --requirements_file requirements.txt 标志再次部署管道。 数据流管道部署正常,但现在它不接受来自订阅的任何消息。数据流作业中没有错误,因为它没有获取消息。
我错过了什么吗?由于没有日志,所以很难识别。
【问题讨论】:
我在使用 requirements_file 时也遇到过同样的情况。一种解决方法是使用 setup.py issues.apache.org/jira/browse/BEAM-10115 ***.com/a/62046774/4756279 【参考方案1】:重新发布@peter-kim 的评论作为答案:使用setup.py
文件,您应该能够做您需要的事情。见Dataflow fails when I add requirements.txt [Python]
【讨论】:
以上是关于python数据流作业在部署后使用requirements_file参数后不接受来自pubsub订阅的消息的主要内容,如果未能解决你的问题,请参考以下文章
在 Azure Devops 中部署管道后暂存槽的 Web 作业未停止