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