Профилирование системы с помощью многократно используемых декораторов

В нашей кодовой базе есть несколько широко используемых декораторов.

Когда я создаю профиль времени выполнения, большая часть графика вызовов выглядит как песочные часы; многие функции вызывают одну функцию (декоратор), которая затем вызывает множество функций. Это менее полезный профиль, чем мне бы хотелось.

Есть ли способ исправить эту ситуацию? Удаление декоратора не вариант; он обеспечивает необходимую функциональность.

Мы рассмотрели возможность ручного удаления декоратора из данных cProfile постфактум, но это кажется невозможным, потому что данные суммируются в отношения вызывающий -> вызываемый, что разрушает отношения вызывающий -> декоратор -> вызываемый. .

10
задан bukzor 21 February 2012 в 22:55
поделиться