0

我正在使用 Google App Engine,并按照说明设置 Google 调试器,如下所示: https ://cloud.google.com/debugger/docs/setup/nodejs

我的项目是用 Node.js 编写的,我正在使用这一行启动服务:

require('@google-cloud/debug-agent').start({serviceContext: {enableCanary: true}});

我还生成了源上下文文件。

当我转到调试器控制台 ( https://console.cloud.google.com/debug ) 时,我看到有关调试代理正在运行的绿色勾号,但左侧的“已部署文件”下没有显示任何内容。

添加了屏幕截图

有任何想法吗?

4

1 回答 1

1

你看到的是预期的行为。部署到App Engine Standard将显示源代码,因为源文件包含在部署中并且不使用 Docker 容器,而App Engine Flex的部署使用 Docker 容器,目前不需要包含源文件,因此您需要从 Git 存储库生成的源上下文信息。有关标准和弹性差异的更多信息,请参阅选择 App Engine 环境

要让 App Engine Flex 应用程序源代码出现在 Cloud Debugger 上,它必须位于远程代码托管提供商上。确保您正确遵循自动选择源代码。您的主要源代码(jsyamlsource-context.json)应位于存储库的根目录中,如下所示。

App-directory/
  main.py
  app.yaml
  source-context.json

我已经使用 Github 成功部署了示例应用程序,左侧显示了源代码,如下所示。 一些重要的注意事项:调试器

使用“Cloud Source Repositories”或“GitHub”或任何其他远程代码托管选项时,必须小心:

  • 对源文件的更改必须在运行前提交给版本控制gcloud debug source gen-repo-info-file
  • gcloud debug source gen-repo-info必须在部署应用程序之前运行。
  • 在运行 Cloud Debugger 之前,必须已将提交推送到 Cloud Source Repository/GitHub/etc。
  • 必须已授予对 Cloud Debugger 应用程序的存储库的访问权限。
  • 当存储库或源代码发生更改时,始终重新部署应用程序。
于 2021-11-18T07:53:11.183 回答