zoukankan      html  css  js  c++  java
  • How to remote debug neutron

    First of all, I will assume that you know how to use pydevd to remote debug normal python program. If you do not know that, you can read the corresponding docs on Pycharm official website.

    If you know very well how to remote debug normal python programs and you are trying to remote debug neutron, you can continue.

    To remote debug neutron, only three additional things need to be done:

    1. Change the worker numbers of neutron api server.

    You need to edit /etc/neutron/neutron.conf to set api_worker = -1. Because by default, neutron will start multi-workers.

    2. Config your IDE (my case it is PyCharm).

    In Pycharm you need to set

    File->Build, Extension, Debugger->Python Debuger->Gevent Compatible
    

    3. In neutron code, You need to edit neutron/common/eventlet_utils.py

    On the server, the absolute path will be the neutron install location. Like /usr/lib/python2.7/site-packages/neutron/common/eventlet_utils.py

    Change the

    eventlet.monkey_patch
    

    to

    eventlet.monkey_patch(os=False, thread=False)
    

    The reason to do this is very well explained in the code comment

    import os
    
    import eventlet
    
    
    def monkey_patch():
    	if os.name == 'nt':
    		# eventlet monkey patching the os and thread modules causes
    		# subprocess.Popen to fail on Windows when using pipes due
    		# to missing non-blocking IO support.
    		#
    		# bug report on eventlet:
    		# https://bitbucket.org/eventlet/eventlet/issue/132/
    		#       eventletmonkey_patch-breaks
    		eventlet.monkey_patch(os=False, thread=False)
    	else:
    		eventlet.monkey_patch(os=False, thread=False)
    

    OK now. You can remote debug as you did.

  • 相关阅读:
    介绍Shiro Annotation及Shiro标签的用法
    SpringMVC+Apache Shiro+JPA(hibernate)案例教学(四)基于Shiro验证用户权限,且给用户授权
    SpringMVC+Apache Shiro+JPA(hibernate)案例教学(一)整合配置
    Spring MVC之@RequestMapping 详解
    vimrc
    sk_buff深度解析
    ieee80211ax简介
    新基地
    dos格式迭代转为unix
    ath10k MAC地址
  • 原文地址:https://www.cnblogs.com/kramer/p/5660442.html
Copyright © 2011-2022 走看看