Jump to: navigation, search

Manila/Debugging

With the proposed changes in Manila, setting up source-level debugging should be straightforward. This page describes the process for PyCharm; feel free to enhance the content with other IDEs such as Eclipse/PyDev.

Remote debugging

1. Ensure your OpenStack environment has the pydevd library installed. This is distributed as an egg in the top level of the PyCharm installation directory; there are two separate eggs for Python 2.x and 3.x. For Python 2, just run "easy_install pycharm-debug.egg" to install it in your Python path.

Pydevd.png


2. Create a remote debug configuration in PyCharm (Run-->Edit Configurations...Python Remote Debug).

Manila debug local.png


3. Invoke the debug configuration (Run-->Debug...->(config name)). PyCharm will begin listening on the specified port.

4. Start the Manila service to be debugged using the pydev-debug-host switch, where the host is the system running PyCharm. If the default port (58786) isn't suitable, specify a different port using the pydev-debug-port switch.

Start remote debug



Local debugging

1. If PyCharm is running locally to OpenStack, local debugging is especially convenient. Install the pydevd egg as described above.

2. Create a local config.

Local debug config


3. Invoke the debug configuration, which will start the relevant Manila service and route is console output to PyCharm.