aws / aws/amazon-codeguru-profiler-python-agent

Missing data for processes started with ProcessPoolExecutor

未關閉
#49 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Python
星號
16
分支
12
PR 合併指標
30 天內沒有已合併 PR

描述

We have a Flask application with Gunicorn running on AWS Fargate. Our application has part of the business logic executed in parallel, using ProcessPoolExecutor. The executor, including the worker processes are reused and long running.
We have noticed that we are missing profiling data for the logic executed in worker processes. We have attempted to start new profiler for worker processes using ProcessPoolExecutor initializer, but this attempt has failed with message that we can't start the profiler twice within the same process.

貢獻指南

開啟貢獻指南

研究方向

首先,在 AWS Fargate 上重現使用長時間執行的 ProcessPoolExecutor 及其 initializer 的 Flask 和 Gunicorn 設定。調查 worker 程序中的 profiler 生命週期;當能夠收集 executor worker 的 profiling 資料,且不會觸發 duplicate-profiler-start error 時,即視為完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
aws, flask, python
領域
backend, observability-sre
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
25/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。