Google Cloud Profiler 显示 [未知 - 无 Python 线程状态]

Posted

技术标签:

【中文标题】Google Cloud Profiler 显示 [未知 - 无 Python 线程状态]【英文标题】:Google Cloud Profiler showning [Unknown - No Python thread state] 【发布时间】:2020-06-05 17:19:41 【问题描述】:

今天我开始将Google Cloud Profiler 用于在 Google App Engine 标准环境上运行的 Python3 项目。

我希望在生成的火焰图中看到对我的函数的引用,但我在 CPU 时间配置文件中只发现了一个 [Unknown - No Python thread state]

我关注了these instructions。

我不明白这是否是预期的结果:

【问题讨论】:

【参考方案1】:

你在哪里调用分析器启动函数?配置文件启动函数应尽可能早地调用一次。如果您尚未将配置文件初始化代码移动到 Django 的 urls.py 文件,请参阅此SO 帖子。然后负载测试您的应用程序。

如果您使用的是 uWSGI,则需要注意 Profiler documentation 中提到的一些限制

【讨论】:

你好@MaryM,这是一个 Flask 应用程序,分析器启动函数调用位于我的模块 __init__.py 的最顶部。在它之前执行,只有main.py,这是一个简单的from my_module import app

以上是关于Google Cloud Profiler 显示 [未知 - 无 Python 线程状态]的主要内容,如果未能解决你的问题,请参考以下文章

google-cloud-profiler 元数据服务器警告

Google Cloud Profiler Java 代理的日志记录级别

为啥@google-cloud/profiler 在 GKE 实例中运行时会抛出“permission_denied”错误?

用于 Google Cloud 外部服务器的 agentPath 上的 Stackdriver GCP 多个代理

在 Docker 中安装 GCP Profiler 代理时遇到问题

Google Cloud Trace Opentelemetry Java 示例代码未显示在 Google Cloud Trace 仪表板上