2015-11-17 7 views
0

Я разрабатываю устройство для хранения cassandra для graphite-api. graphite-api устанавливается через pip и выполняется через gunicorn, поэтому я не могу просто вызвать скрипт с помощью отладчика, но вы хотите использовать интерактивную отладку.Как отлаживать скрипт Python, который автоматически вызывается внутри веб-приложения?

Когда я импортирую pdb в свой поисковик и установил точку останова, код остановится там, но как я могу подключиться сейчас к безголовому рабочему pdb в скрипте? Или мой подход к этой проблеме отладки неправильный, и это нужно сделать совершенно другим способом?

ответ

1

pdb дает контроль над пушкой, что не то, что вы хотите. Посмотрите на rpdb или другие удаленные отладочные решения.

+2

rpdb был именно тем, что я искал. Я просмотрел несколько удаленных отладочных страниц python, но ни один из них, похоже, не дал мне полезного решения для удаленной отладки. rpdb останавливает весь рабочий процесс артиллериста при запуске в rpdb.set_trace(), а затем я могу подключиться через netcat и начать отладку. Полезную информацию для любого другого пользователя, ищущего это, вы должны запустить gunicorn с очень высоким значением параметра --timeout, потому что он убивает рабочие рабочие процессы после 30 секунд – fxk8y