pystorm / streamparse

Run Python in Apache Storm topologies. Pythonic API, CLI tooling, and a topology DSL.
http://streamparse.readthedocs.io/
Apache License 2.0
1.5k stars 218 forks source link

Add/support a tool for remote debugging. #180

Open rduplain opened 9 years ago

rduplain commented 9 years ago

Python has many debugging tools. Add or support a tool to attach to and debug a running streamparse component.

rduplain commented 9 years ago

Examples: pyrasite, pdb over socket, celery.contrib.rdb.

rduplain commented 9 years ago

@dan-blanchard says:

It's not well documented, but I actually added remote debugging support using remote_pdb in the last version of streamparse. I needed to debug some stuff, so I threw it in there. You send a SIGUSR1 to the process to get it to drop into the debugger, and then you can just use telnet to connect to it. Right now it only listens on 127.0.0.1 with a random port, so we should probably make those things configurable. https://github.com/Parsely/streamparse/blob/master/streamparse/storm/component.py#L47-L57

dan-blanchard commented 9 years ago

We're using remote_pdb for this now, because it seemed to be the simplest and most up-to-date version of this concept. We just need to better expose this functionality and make it more configurable.