【发布时间】:2021-11-16 22:13:28
【问题描述】:
我正在尝试为我在 Cloud Run 中运行的 Flask 应用启用 Google Cloud Debugger。
该项目是一个简单的“Hello World”,带有 Flask 和 Dockerfile。将 Bitbucket 的代码同步到 Cloud Source Repositories 并设置为在主分支更新时触发启动。
一切都按预期进行,新的推送触发了成功的构建。不过,现在我想添加 Cloud Debugger,但遇到了一些问题。
按照documentation,我有:
- 启用云调试器 API
- 已将
pip install google-python-cloud-debugger添加到我的 Dockerfile 中 - 在我的应用程序早期添加了以下代码
try:
import googleclouddebugger
googleclouddebugger.enable(
breakpoint_enable_canary=True
)
except ImportError:
pass
我推送了更改,构建成功。
我可以看到 Cloud Repository 显示了正确的提交,但是当我在调试器下查看时,没有可见的应用程序(下面的屏幕截图 1),如果我在 Cloud Source Repo 中单击“开始调试”,我会收到一条消息说我需要设置调试器(截图 2)
谁能告诉我我错过了什么?
【问题讨论】:
-
你有哪个版本的python?您安装了哪个云调试器版本?
-
你部署了
source-context.json文件cloud.google.com/debugger/docs/source-context#python -
您的 dockerfile 使用什么发行版? alpine 在 git 上被列为 python-debugger 的问题。
-
@Pentium10。谢谢你这么清晰的cmets。我目前正在运行 python 3.7。我从 3.9 降级,因为我发现关于需要什么的建议相互矛盾。我正在使用 Slim 发行版。我还没有部署 source-context.json 文件,因为没有提到与 Cloud Run 相关的内容,但接下来我会尝试一下。
-
@Pentium10 添加 source-context.json 没有帮助。也许接下来我会尝试不同的发行版...您有什么建议吗?
标签: python google-cloud-run google-cloud-debugger