Google App Engine 如何实现分析(堆栈跟踪)?

Posted

技术标签:

【中文标题】Google App Engine 如何实现分析(堆栈跟踪)?【英文标题】:Google App Engine How to implement Profiling(Stack Tracing)? 【发布时间】:2018-04-03 13:16:19 【问题描述】:

我正在使用Google App Engineflexible env 上运行我的NodeJS 应用程序,现在我想生成FlameGraph 但事情是App Engine 本身处理scalingdeploying 的实例现在任何人都可以请告诉我如何生成 Flamegraph(NodeJs Profiling) 来跟踪来自我的 NodeJs 服务器的请求。

如果你们中有人在任何框架(NodeJs 或任何其他)上使用过 Google App Engine,请大家告诉我你们是如何在 App Engine 上解决这类问题的。 p>

更新 -

为什么我们需要在调试后删除实例。

【问题讨论】:

【参考方案1】:

火焰图是分析软件的可视化,允许 可以快速准确地识别最常见的代码路径。

因此,FlameGraphs 与网络、扩展或部署到 GCP 无关。

无论如何,FlameGraph 只是一个可以安装和运行的第三方工具。所以答案是你可以让它像在本地计算机上安装和运行一样工作。

如果你不知道如何使用 FlameGraph 来分析 NodeJS,那么你应该开始阅读一些教程,因为这个网站不适合这类问题。一个好的在这里:https://nodejs.org/en/blog/uncategorized/profiling-node-js/

更新:如何通过 ssh 进入应用引擎 flex 实例

在谷歌云控制台中转到 App Engine Flex -> 实例

【讨论】:

但事情在App Engine 上,实例由 App Engine 管理,那么我怎样才能在它们上运行任何东西呢?? 在 app engine flex 中你可以使用 docker 文件修改环境,见:cloud.google.com/appengine/docs/the-appengine-environments 另外,如果它是一个独立的库,您可以将其添加到您的项目文件夹中。有关更多信息,请参阅:***.com/questions/14850853/… 对不起,如果我没有正确理解您,但 FlameGraph 是通过在我的实例上通过控制台运行命令来制作的。但这里的问题是,我如何在我的应用引擎实例上运行命令?我对使用 App Engine 有点困惑。 @SudhanshuGaur 查看答案的更新。你真的应该学习应用引擎环境的基础知识

以上是关于Google App Engine 如何实现分析(堆栈跟踪)?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Google App Engine 中实现互联网高分

如何将 socket.io 部署到 Google App Engine?

如何在 Google App Engine 上为社交新闻提要建模

如何在 Google Cloud App Engine 上使用 PubSub 创建订阅者,该订阅者通过 Publisher 从 Google Cloud App Engine Flex 收听消息?

如何在 Google App Engine app.yaml 中处理尾部斜线

如何减少 Google App Engine 部署的 ktor App 文件大小