2015-09-03 4 views
0

Я разрабатываю сервер Django на Ubuntu OS. Поскольку на этом компьютере нет браузера, я могу удаленно отлаживать сервер. Поэтому я просто настраиваю его с помощью Apache и WSGI, и теперь я могу получить к нему доступ через общедоступный IP-адрес устройства.Отладка django удаленно

Затем я хочу записывать журналы в некоторых представлениях для отладки, если я выводю журнал в файл, я могу увидеть его в файле, но если я хочу его вывести на консоль, я просто запутаюсь здесь, где консоль? так как я не запускал его с python manage.py runserver вручную, запущенный в данный момент серверный процесс запускался WSGI автоматически. Конечно, я могу просто остановить процесс, запущенный WSGI, и перезапустить его с помощью python manage.py runserver вручную. Если это так, я не могу получить доступ к нему через общедоступный IP-адрес устройства.

Так как я могу увидеть журналы в консоли в замазкой

ответ

3

Во-первых, вы не должны разрабатываться на сервере. Делайте это локально и отлаживайте обычным способом.

Если вы отлаживаете производственные проблемы, вам действительно нужно будет использовать файлы журнала. Но их довольно просто увидеть в консоли; вы можете сделать tail -f /var/log/my_log_file.log, и консоль покажет журнал, как он записывается.

+0

Отличная точка для хвоста –

0

Вы не можете вывести его на console. Поскольку процесс не вызывается с консоли, вы не можете видеть stdout в консоли. Вы можете перенаправить вывод в файл и прочитать файл.

Если вы хотите вести журналы в консоли, вам нужно вызвать сервер django с консоли. i.e python manage.py runserver, который должен использоваться только для времени разработки, так как этот сервер не годится для использования в производстве

+0

Но я не могу получить к нему доступ через общедоступный ip без wsgi –

+0

@ybbaigo: Запись в файл - лучший вариант. Почему бы вам не сделать это? –

+0

Конечно, вы можете использовать 'runerver' Django с общедоступными IP-серверами:' ./manage.py runningerver 0.0.0.0: 8000' позволит Django прослушивать порт 8000. Я использую это при разработке с использованием виртуальной машины локально на своей машине (конечно, с переносом портов). – Mischback

Смежные вопросы