【问题标题】:Unable to debug firebase functions无法调试 firebase 功能
【发布时间】:2017-03-16 12:26:04
【问题描述】:

我正在尝试调试在 firebase 函数上运行的 js 代码。 我的步骤是: 从函数安装

npm install --save @google-cloud/debug-agent

添加了 index.js:

require('@google/cloud-debug').start();

当我尝试运行时

firebase deploy --only functions

出错了:

Error: Error parsing triggers: Cannot find module '@google/cloud-debu
g'

Try running "npm install" in your functions directory before deployin

【问题讨论】:

    标签: debugging firebase google-cloud-functions google-cloud-debugger


    【解决方案1】:

    试试:ndb firebase serve

    调试器断点在堆栈跟踪可见的情况下被命中,注意它有点慢,所以给调试器时间来检测子进程

    此外,我还能够使用(移除值的上限)单独调试云函数:

    GCLOUD_PROJECT=THE-FIREBASE-PROJECT node --inspect-brk /path/to/functions-framework --target FUNCTION-NAME --port=5000

    其中 functions-framework 只是扩展为已安装的 functions-framework 的完整路径(在我的情况下是全局的),并且工作目录包含函数的目标 index.js。

    或者在需要 FIREBASE_CONFIG 的时间或地点尝试调整此格式以适应: FIREBASE_CONFIG="{\"databaseURL\":\"https://YOUR-FIREBASE-PROJECT.firebaseio.com\",\"storageBucket\":\"YOUR-FIREBASE-PROJECT.appspot.com\",\"projectId\":\"YOUR-FIREBASE-PROJECT\"}

    【讨论】:

      【解决方案2】:

      index.js 的补充应该是:

      require('@google-cloud/debug-agent').start();

      或更好:

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

      我们最近重命名了该模块,您所遵循的说明可能部分已过时。您能否指出您一直遵循的说明?

      另请注意,目前对调试云功能的支持处于试验阶段。在某些情况下(取决于函数的流量),您的函数可能会在调试代理有机会初始化/注册之前完成。我们目前正在研究如何解决这个问题。

      【讨论】:

      • 您知道我应该更新哪些文件以在@​​987654321@ 上进行调试吗?这是唯一的功能文件夹吗?我尝试在本地上传所有项目/功能文件夹,但看不到任何进度或 ui 更改。可能是什么原因
      猜你喜欢
      • 2020-07-18
      • 2018-11-02
      • 1970-01-01
      • 2018-10-09
      • 2017-11-15
      • 2020-05-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多