Статистические профилировщики, как правило, должны запускаться за пределами выборочного профиля (в любом случае нужно и pyflame, и py-spy), и их поведение в потоках часто странное, что затрудняет их использование для профилирования конкретных запросов в многопоточных серверах.
Явное включение cProfile (в корне запроса) хорошо работает в этой ситуации, но ограничения средних трассировок стека не могут быть перестроены (каждая функция появляется только один раз в выходных данных, а рекурсия просто создает циклы в хранилище / вывод) затрудняет анализ на высоком уровне, а флеймографы невозможны.
Есть ли альтернатива cProfile, которая выполняет основанное на времени профилирование без выборки, но сохраняет всю трассировку стека и может создавать надлежащие синхронизированные пламенные графы?