我有一个独立的 Python 应用程序。
python 进程没有使用任何框架。并且是一个简单的独立 python 进程。
这已成功与 Elastic APM (+ElasticSearch +Kibana) 集成以捕获遥测数据。
Python 版本: 3.7
elastic-apm python 代理: 5.8.0
Elastic Search、APM 和 Kibana 版本: 7.7.1
如官方文档中所述,我使用以下语句开始从我的 python 进程中捕获指标
client = elasticapm.Client(service_name="MY_SERVICE",service_node_name="MY_SERVICE_NODE",server_url="=http:///apm-server:8200",recording="true",environment="PROD")
elasticapm.instrument()
但在 Kibana 上,我只能看到以下 3 个系统指标(在 2 个可视化下):
- 主机的 CPU 使用百分比
- 进程特定的 CPU 使用百分比
- 主机的内存使用百分比
根据python 代码分析,以及我读过的内容。Elastic APM 代理收集其他与流程相关的指标,例如:
- 进程使用的内存
- 处理正常运行时间
这些我在 Kibana 上看不到 - APM - Metrics Visualization
请参阅屏幕截图
此外,我希望 Elastic APM Python 代理收集其他信息,例如:
- 进程的线程级 CPU 使用率
- 进程中的线程数
- 垃圾收集统计
- IO 统计
哪些已可用于 Elastic APM Java 代理。
参考截图