Графики пламени процессора для PythonPython

Программы на Python
Anonymous
Графики пламени процессора для Python

Сообщение Anonymous »

Графики CPU Flame Graphs Брендана Грегга — это способ визуализации использования ЦП за определенный период времени на основе стеков вызовов.

Его проект FlameGraph на github предоставляет независимый от языка способ построения этих графиков:

Для каждого языка FlameGraph требует способа предоставления входных данных стека в виде таких строк:

Код: Выделить всё

grandparent_func;parent_func;func 42
Это означает, что инструментированная программа выполняла функцию func, которая была вызвана из родительской_функции, которая, в свою очередь, вызывалась из функции верхнего уровня grandparent_func. В нем говорится, что стек вызовов наблюдался 42 раза.

Как я могу собрать информацию о стеке из программ Python и предоставить ее FlameGraph?

Бонусные баллы: как это можно расширить, чтобы отображался стек как C, так и Python, или даже вплоть до ядра в Linux (аналогично некоторым флейм-графам Java и node.js на веб-сайте Брендана)?

Изображение

Вернуться в «Python»