2013-02-18 5 views
-2

У вас есть приложение, которое построено в Python Django и Python. Основной сборник построен в Django и некоторых частях Python. Оба находятся на одном сервере, но в разных местах.Stacktrace Python

Но когда я запустить приложение, я не могу получить любой StackTrace из сценариев Python Я просто получаю 500.

я могу создать локальный сервер для сценариев Django и получить трассировку стека, и я пытаюсь перенаправить приложение Django для загрузки скриптов Python из моего C \: диска вместо сервера, но не может заставить его работать. Я даже не знаю, если это невозможно.

Но мне нужно создать локальный сервер/среду для скриптов Python.

Любые хорошие идеи?

//

+0

Зачем вам нужен стек? Вы обычно получаете это, когда что-то неправильно, когда все в порядке. –

+0

Если мои скрипты работают, это работает, но когда вы печатаете что-то неправильно, я не получаю никакой информации об ошибке, я получаю только 500. Поэтому я не могу развиваться. Это на моем dev-сервере, у меня есть эта проблема. – kingRauk

+0

Не могли бы вы объяснить немного больше о том, как вызываются скрипты python? С помощью оператора импорта, а затем вызовов функций? –

ответ

0

На сервере разработки необходимо установить DEBUG флаг True.

+0

Я сделал это, он работает для скриптов Django, но не для Python-скриптов. – kingRauk

0

Возможно, вы можете использовать try/except блоков.

От Джанго:

# importing some external python script 
import some_python_script 

# Also needed 
import traceback 


# calling a function in the script and getting a stack trace when it goes wrong: 
try: 
    some_python_script.function_to_call() 
except: 
    traceback.print_exc() 
+0

К сожалению, это не просто метод im call, это целая страница с подстраницей. Старый Python занимает около десяти страниц на сайте. Таким образом, это целая часть сайта. – kingRauk

0

найти решение, которое не лучший, но это помогает. В файле Python я регистрирую стек. Для примера:

try: 
    some code 
exception Exception, ex: 
    logging.basicConfig(filename='logFile.log', level = logging.debug) 
    logging.exception(ex); 
Смежные вопросы