【问题标题】:Google cloud debugger not displaying source code谷歌云调试器不显示源代码
【发布时间】:2021-11-15 22:18:16
【问题描述】:

我正在使用 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) 时,我看到有关调试代理正在运行的绿色勾号,但左侧的“已部署文件”下没有显示任何内容。

有什么想法吗?

【问题讨论】:

  • 你能检查一下你是否在入口点脚本的文件顶部添加了这一行require('@google-cloud/debug-agent').start({serviceContext: {enableCanary: true}});。这是 google cloud docs 中给出的说明 - 在应用程序的主脚本或入口点顶部启用代理(但如果您也在使用它,则在 @google/cloud-trace 之后)。
  • 嗨@crivella,我能够重现您所面临的问题,但您能否提交您遇到的问题的屏幕截图以与我重现的内容保持一致。谢谢。
  • 嗨@MarcAnthonyB,我添加了一个屏幕截图。
  • @RajKumarN ,我在我的第一个文件 (start.js) 的顶部添加了这一行
  • 好的,您是否尝试过手动选择源代码库。请参阅此页面了解更多详细信息 - cloud.google.com/debugger/docs/source-options#cloud-source-repo@crivella

标签: google-cloud-debugger


【解决方案1】:

您看到的是预期行为。 App Engine Standard 的部署将显示源代码,因为源文件包含在部署中并且不使用 Docker 容器,而 App Engine Flex 的部署使用 Docker 容器,目前不需要包含源文件,因此您需要从 Git 存储库生成的源上下文信息。更多关于standard和flex的区别,请看Choose an App Engine environment。

要让 App Engine Flex 应用源代码出现在 Cloud Debugger 上,它必须位于远程代码托管提供商上。确保您正确遵循Selecting source code automatically。您的主要源代码(js、yaml 和 source-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 Source Repository/GitHub/etc,然后才能运行 Cloud Debugger。
  • 必须已授予对云调试器应用程序的存储库的访问权限。
  • 当存储库或源代码发生更改时,始终重新部署应用程序。

【讨论】:

  • 感谢@Marc Anthony B 的回复。我不会分享所有这些复杂性来使用像云调试器一样重要的工具,但至少我理解它为什么不起作用。只有一个问题:作为 GitHub 用户,我是许多组织的一部分,当我从 GCloud 选择“GitHub”时,它允许我只选择个人仓库,而不是我所属组织的仓库。所以最后还是不行
  • @crivella 我不知道您的完整用例,但如果 Flex 不起作用,那么我建议使用 Standard。另外,如果您认为应该添加此功能,请在此处提交feature request。
  • @DonnaldCucharo flex 和标准环境有很大的不同,我不能轻易地从 flex 更改为标准。
猜你喜欢
  • 1970-01-01
  • 2021-09-15
  • 2019-09-10
  • 2022-01-17
  • 1970-01-01
  • 1970-01-01
  • 2021-10-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多