当我运行Dataflow作业时,它需要我的小包(setup.py或requirements.txt)并上传它以在Dataflow实例上运行。
但是Dataflow实例上实际运行的是什么?我最近得到了一个堆栈跟踪:
File "/usr/lib/python2.7/httplib.py", line 1073, in _send_request
self.endheaders(body)
File "/usr/lib/python2.7/httplib.py", line 1035, in endheaders
self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 877, in _send_output
msg += message_body
TypeError: must be str, not unicode
[while running 'write to datastore/Convert to Mutation']
但从理论上讲,如果我正在做str += unicode
,这意味着我可能不会运行此Python patch?你能指出这些作业正在运行的docker镜像,所以我可以知道我正在使用的Python版本,并确保我不会在这里咆哮错误的树吗?
云控制台向我展示了实例模板,它似乎指向dataflow-dataflow-owned-resource-20170308-rc02,但似乎我没有权限查看它。它是否可以在任何地方在线获取?
答案 0 :(得分:1)
Haven未经过测试(也许还有一种更简单的方法),但这样的事情可能会有所帮助:
docker ps
以获取容器ID docker inspect <container_id>
Image
docker history --no-trunc <image>
然后你应该找到你想要的东西。