分享

如何使用pdb调试OpenStack Havana

hyj 发表于 2014-7-18 14:39:42 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 13379

问题导读:
1.Pdb调试Havana需要添加什么代码?
2.什么是Pdb?
3.pdb调试OpenStack Havana需要哪些步骤?






什么是pdb?
程序数据库(PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置进行增量 链接。



Note:若是想要用pdb调试OpenStack,必须经由过程Devstack安装它。

Devstack安装Havana过程
1.   应用一般用户(非root用户),从github上获取devstack代码
2.   应用一般用户运行
cd devstack; ./stack.sh
(参考:http://devstack.org/
3.安装过程中请求输入一些暗码,这些暗码将记录在localrc文件中,该文件还可以用来设备安装的openstack组件,默认的只会安装glance,keystone,nova,horizon.
4.  创建文件creds:
exportSERVICE_TOKEN=xxx(3中输入的暗码)
exportOS_TENANT_NAME=admin
exportOS_USERNAME=admin
export OS_PASSWORD=xxx
exportOS_AUTH_URL=http://localhost:5000/v2.0/
exportSERVICE_ENDPOINT=http://localhost:35357/v2.0
source creds就可以应用openstack了
5. 若想更改已安装的组件,再./stack.sh即可

Pdb调试Havana过程
1.      批改代码
在须要调试的处所参加:
import pdb; pdb.set_trace()(以在nova/compute/api.py:get_all()中参加pdb为例)
2.      应用附录上的脚步restart_stack.sh重启办事(该脚本只针对默认安装的组件有效)
3.      开端调试:


显示有两个screen
screen –x stack
进入如下界面:


最下一行默示,每一个过程都有一个screen。带*号的默示当前的screen,可以同时按下ctrl+a+8和ctrl+a+2分别进步和撤退猬缩,来切换不合的screen.
4.      在0¥中输入nova list;切换到4¥ n-api:



5.      开端应用pdb进行调试


重视题目
1.    在./restart_stack后,若是某个办事一向在waiting,申明这个办事运行到了你设置的断点,那么可以应用ctrl+z,把当前的进行切换到后台,然后screen –x stack,找到该办事对应的窗口进行调试,若是不须要在办事启动时就进行调试的话,按‘c’,让它持续履行。之后Ctrl+a +d退出screen,用jobs号令查看后台运行的过程,fg+过程ID, 就可以把./restart_stack.sh的后台过程调出来持续履行了。
2.    ./restart_stack后,Horizon应用不了。



没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条