本文讲解openstack的两个调试工具:pycharm、komodo(以对openstack的nova api远程调试为例)注:后续有时间再对eclipse进行讲解。
1、配置python解释器:(”Edit”-->”Preferences”)
选择python:
2、先保证komodo的Debug菜单的Listen for debuging connections是勾选上的:
3、打开上面菜单的最后一项Listener Status选项卡:
此处的9000为之后要用的远程连接端口。
也可以自定义端口:
4、远程linux配置:
5、确认安装了log模块:
6、将pythonlib/dbgp服务到python的安装目录下:
cp -r pythonlib/dbgp /usr/lib/python2.6/site-packages/ |
7、执行命令检查包是否导入正确:
8、将pydbgp文件拷贝到/usr/bin目录下,执行pydbgp --help命令:
9、远程调试:
方法一:
vim testPython.py
执行命令:
pydbgp -d 192.168.1.133:9000 testPython.py |
其中192.168.1.133为komodo对应的windows的ip地址,9000为3中查看的监听端口。
此时可以看到komodo IDE:
linux远程代码被下载到komode,接下来可以进行远程调试。
方法二:
在需要远程调试的代码中添加如下代码:
from dbgp.client import brkbrk(host="192.168.1.133", port=9000) |
openstack的nova api调试为例:
vim /usr/lib/python2.6/site-packages/nova/compute/api.py
增加代码:
重启服务。
在页面点击instance或者linux执行命令nova list则komodo监听到远程debug连接:
是否选择代码mapper自己选择。本处选择no:
则komodo自动将远程的代码下载到本地:
接下来则可以进行调试。
关于pycharm远程调试请参考后续文章openstack windows下远程debug调试(pycharm)