Hi Paul, I have got the debug environment setup for Swift only. I have a devstack installation running on my machine. I use python debugger (pdb) for debugging. To debug any method you can issue 'pdb.set_trace()' call in that method (after importing pdb) and restart that particular service from "screen". (You can get multiple screens in devstack by 'screen -r stack' in running devstack directory. And service can be restarted by first switching to screen of service using Ctrl+A+screen_num, than pressing Ctrl+C to stop service, and pressing Up arrow to get command to restart the service).
To get into some server methods such as PUT, GET, WRITE etc. in account, container and object, after calling pdb.set_trace() in them, you need to issue Swift commands such as Post and Upload from shell. And the screen of that particular service at which pdb was called will take you into debugger. Regards, M Kazim On Tue, Jul 23, 2013 at 4:25 PM, Luse, Paul E <paul.e.l...@intel.com> wrote: > HI Muhammad **** > > ** ** > > If you’ve got full debug working well, I would love to replicate your > environment (and suspect I’m not the only one). If you have some time, it > would be great if you could detail setup instructions and config options on > this post.**** > > ** ** > > Thx**** > > Paul**** > > ** ** > > *From:* Openstack [mailto:openstack-bounces+paul.e.luse= > intel....@lists.launchpad.net] *On Behalf Of *Muhammad Kazim > *Sent:* Tuesday, July 23, 2013 12:33 AM > *To:* Gareth > *Cc:* email@example.com > > *Subject:* Re: [Openstack] Issue in debugging OpenStack Swift**** > > ** ** > > Worked perfectly in the first attempt. Thanks a lot for the help. :) **** > > On Tue, Jul 23, 2013 at 10:41 AM, Gareth <academicgar...@gmail.com> wrote: > **** > > the key reason it here: > https://github.com/openstack/swift/blob/master/swift/common/utils.py#L1047 > **** > > ** ** > > you have many ways to stop flush IO; I prefer add a line "stdio_files = > " after line 1037**** > > ** ** > > On Sun, Jul 21, 2013 at 1:58 AM, Muhammad Kazim <kazima...@gmail.com> > wrote:**** > > Hi all, > > I wanted to debug Swift source code. I have a Devstack setup running on my > machine that i have configured to only run keystone, mysql and swift. > > I have used pdb to debug source code. I was able to debug > python-swiftclient, middleware (common), and proxy-server code. However, > when i try to debug Object Server of Swift, by issuing pdb.set_trace() call > in diskwrite or any write function in /swift/obj/server.py (except > constructor) and than issue a 'swift post' or 'swift upload' command from > other terminal, the object server crashes. The screen of s-object shows an > error in the line in which 'pdb.set_trace()' is called. > > Can someone please guide me how can i debug the Swift s-object code in > /swift/obj/server.py. Thanks. > > Regards, > Muhammad Kazim**** > > _______________________________________________ > Mailing list: https://launchpad.net/~openstack > Post to : firstname.lastname@example.org > Unsubscribe : https://launchpad.net/~openstack > More help : https://help.launchpad.net/ListHelp**** > > > > **** > > ** ** > > -- **** > > Gareth**** > > ** ** > > *Cloud Computing, OpenStack, Fitness, Basketball***** > > *OpenStack contributor***** > > *Company: UnitedStack <http://www.ustack.com>***** > > *My promise: if you find any spelling or grammar mistakes in my email > from Mar 1 2013, notify me ***** > > *and I'll donate $1 or **￥1 to an open organization you specify.***** > > ** ** >
_______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : email@example.com Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp