我正在运行Openstack云系统。我在服务器上成功安装并部署了kilo版本,但这只是Openstack的默认版本。所以,我希望在这个openstack源上进行一些修改,并为它添加更多功能。
我开始用Openstack Dashboard改变一些东西。但是,发生了一些问题。因此,我调试了这个django Web应用程序。我配置的所有内容都与openstack网站(http://docs.openstack.org)上的官方教程相同。
所以,我在我的服务器上搜索并找出有两个来源的地方:
我在local_settings.py文件中设置了Debug = True选项。
在服务器上我输入了以下命令:
cd /usr/share/openstack-dashboard/
python manage.py runserver
这是输出:
RemovedInDjango18Warning: XViewMiddleware has been moved to django.contrib.admindocs.middleware.
WARNING:py.warnings:RemovedInDjango18Warning: XViewMiddleware has been moved to django.contrib.admindocs.middleware.
RemovedInDjango18Warning: XViewMiddleware has been moved to django.contrib.admindocs.middleware.
WARNING:py.warnings:RemovedInDjango18Warning: XViewMiddleware has been moved to django.contrib.admindocs.middleware.
Performing system checks...
System check identified no issues (0 silenced).
August 05, 2015 - 09:28:50
Django version 1.7.6, using settings 'openstack_dashboard.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
但在浏览器中,它显示错误:
然后,在控制台上显示:
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[05/Aug/2015 10:21:29] "GET / HTTP/1.1" 302 0
Not Found: /horizon/auth/login/
[05/Aug/2015 10:21:29] "GET /horizon/auth/login/?next=/ HTTP/1.1" 404 4237
Not Found: /favicon.ico
[05/Aug/2015 10:21:29] "GET /favicon.ico HTTP/1.1" 404 4206
请帮助我解决这个问题。如何正确调试Openstack Django网站。非常感谢你!
答案 0 :(得分:2)
当您通过runserver命令运行服务器时,您应该转到根URL 127.0.0.1:8000/ 不 127.0.0.1:8000/horizon
不同之处在于运行方法。 当您安装openstack_dashboard时,有一个apache配置可以监听地址http://host/horizon查看/ etc / apache2 / conf / sites-available /
目录
/usr/lib/python2.7/dist-packages/horizon /
就像所有仪表板的框架
的/ usr /共享/开栈的仪表板/
是openstack的默认仪表板
/etc/openstack-dashboard/local_settings.py
仪表板的配置文件。您可以在此处应用默认短划线的更改,例如,附加修改或扩展默认短划线的项目
因此,如果您按照该链接http://127.0.0.1:8000/,您的问题就会得到解决 用于调试使用
使用集成调试器的pdb或ide
答案 1 :(得分:0)
请点击此链接。 http://docs.openstack.org/developer/horizon/quickstart.html
完成此操作后,将pdb语句添加到您要调试的代码中。进入horizon文件夹并运行以下命令 ./run_tests.sh --runserver 127.0.0.1:port_number
您可以输入地平线正在运行的IP地址,而不是本地主机
答案 2 :(得分:0)
我已经使用PyCharm编写了用于调试仪表板的OpenStack文档 (适用于包括Horizon在内的任何Openstack仪表板) http://docs.openstack.org/developer/mistral/developer/troubleshooting.html