zoukankan      html  css  js  c++  java
  • debugging openstack with pdb

    在要开始debug的地方导入pdb:

    
    
    class KeypairAPI(base.Base):
        """Sub-set of the Compute Manager API for managing key pairs."""
        def __init__(self, **kwargs):
            super(KeypairAPI, self).__init__(**kwargs)
    
        def _validate_keypair_name(self, context, user_id, key_name):
    
            import pdb; pdb.set_trace()       
    
            safechars = "_- " + string.digits + string.ascii_letters
            clean_value = "".join(x for x in key_name if x in safechars)
    

    然后触发该代码,如执行cli命令等,然后用screen打开后台就会看到如下:

    .
    .
    2013-03-26 19:56:26 71243 DEBUG nova.utils [-] Reloading cached file /etc/nova/policy.json read_cached_file /usr/lib/python2.6/site-packages/nova/uti1
    2013-03-26 19:56:27 INFO nova.api.openstack.wsgi [req-9ef1fd31-0cec-4465-894a-f1ae0fa9a77e 320ce46de7e24a75a7ff8906d7355ff7 57ff99aae24b4035b52177a72s
    > /usr/lib/python2.6/site-packages/nova/compute/api.py(2198)_validate_keypair_name()
    -> safechars = "_- " + string.digits + string.ascii_letters
    (Pdb) 
    (Pdb)  n
    > /usr/lib/python2.6/site-packages/nova/compute/api.py(2199)_validate_keypair_name()
    -> clean_value = "".join(x for x in key_name if x in safechars)
    (Pdb)  safechars
     '_- 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' 
    (Pdb) 
    (Pdb)  quit

    debug完后输入quit继续运行。

    debug好之后不要忘了Remove the debugging fragment from the source file. Start the server daemon gracefully —

    ref: https://kashyapc.com/2013/03/27/debugging-nova-a-small-illustration-with-pdb/

  • 相关阅读:
    Arduino uno 教程~持续更新~
    Arduino uno LED灯实验
    Arduino uno 引脚说明
    面包板的使用
    数量经济学推荐的Julia教程
    已知一点经纬度和距离,方位角;求另外一点的经纬度
    a recipe kindly provided by Dimas for kikuchi
    发现了拯救“文献多的一团麻”的工具
    matlab中diff的用法
    matlabR2017安装
  • 原文地址:https://www.cnblogs.com/pinganzi/p/6279968.html
Copyright © 2011-2022 走看看