← Back to team overview

openstack team mailing list archive

Re: Development/Debugging

 

Thank you both. I have used pdb today with quantum service, just as you explained: by placing pdb.set_trace() function where I wanted to run the code myself. All worked well except when the a wait function from the eventlet library was called. After which program waits for an input and when an event happens it just doesn't return back to pdb (and continues normally). 

And yes, it seems that GUI tool might be hard to use, since there is no single main function but many daemons working together so it makes sense to go through each daemon at a time using pdb. But may be I am wrong...
Hope other people also share their experience.

Thanks again,
Salman


From: Mandar.Vaze@xxxxxxxxxxx
To: salmanmk@xxxxxxxx; openstack@xxxxxxxxxxxxxxxxxxx
Subject: RE: [Openstack] Development/Debugging
Date: Tue, 12 Jun 2012 03:58:39 +0000









Salman,
 
I haven’t used UI tools like Pydev and/or eclipse. I have a devstack installation running on linux box where I use ssh for all my development.
 
TL;DR Version : I use pdb (aka Python Debugger) It is very easy to use if you have used gdb - (Refer to 
http://docs.python.org/library/pdb.html#debugger-commands
if you are unfamiliar with pdb)
 
Longer Version:
·        
To trace how the “allocate_for_instance” works for Quantum –  put “pdb.set_trace()” in method “def allocate_for_instance” in file nova/network/quantum/manager.py
You also need “import pdb” somewhere at the top in the same file.
 
·        
Stop and restart nova-network process from “screen” (So that modified nova/network/quantum/manager.py is used.)
 
·        
Try to create an instance (which eventually needs to allocate fixed IP for the instance) Now go to “nova-network” console – as soon as RPC call is
 made to the method “allocate_for_instance” , execution will stop and you are presented with (pdb) interactive prompt – From here on you can debug using pdb commands

 
 
-Mandar
 
 


From: openstack-bounces+mandar.vaze=nttdata.com@xxxxxxxxxxxxxxxxxxx [mailto:openstack-bounces+mandar.vaze=nttdata.com@xxxxxxxxxxxxxxxxxxx]
On Behalf Of Salman Malik

Sent: Monday, June 11, 2012 10:49 PM

To: openstack@xxxxxxxxxxxxxxxxxxx

Subject: [Openstack] Development/Debugging


 

Hi All,



I have been trying to get my head around the OpenStack functionality for a while now but unfortunately haven't been able to grasp it. I am interested on working on Quantum (and may be creating new plugins) but I am still unable to debug my own problems. So
 I thought it would be best for me to learn from how code works. Although I have been looking at the code for quite some time but didn't get anywhere. Now I have installed Pydev on Eclipse and am wondering how to run the massive OpenStack code in debug mode
 (so as to learn the call/control flow) ? So I thought I could get some help from OpenStack gurus like how do you people develop/debug problems ? What environment are you using ? Any suggestions/tips are welcome.


(Please note that I have read the nova and Quantum administration guides and also looked at the nova developer's guide)



Any help would be much appreciated.



Thanks,

Salman



______________________________________________________________________

Disclaimer:This email and any attachments are sent in strictest confidence for the sole use of the addressee and may contain legally privileged, confidential, and proprietary data.  If you are not the intended recipient, please advise the sender by replying promptly to this email and then delete and destroy this email and any attachments without any further use, copying or forwarding
 		 	   		  

Follow ups

References