Python Cprofile: Как отфильтровать конкретные вызовы из данных профилирования?
-
04-10-2019 - |
Вопрос
Я начал профилировать сценарий, который имеет много sleep(n)
заявления. В общем, я получаю более 99% времени проведения, проведенного сном. Тем не менее, иногда он иногда бежит в производительности в то время, что это реальная работа, но соответствующие, интересные данные профилирования становится очень трудно идентифицировать, когда например, использование KCachegrind.
Есть ли способ, которым я могу заблокировать определенные звонки / функции от профилирования? В качестве альтернативы, как я могу отфильтровать такой вызов с последующей обработкой файла данных профилирования?
Я использую декоратор Profiletats ( http://pypi.python.org/pypi/profilestats. ).
Спасибо
Решение
Вам нужно больше, чем просто исключая образцы во время сна (). Вам нужны остальные образцы, чтобы сказать вам что-то полезное. Это будет отборка стека, на стеновом времени, суммируя проценты на уровне строки кода. Zoom. Является ли хороший инструмент для такого рода выборки, и я надеюсь, что это не слишком сложно игнорировать образцы, которые содержат конкретную функцию.