单独运行python 脚本时,怎么样连接进入项目的流程,获取工程项目的运行时状态?

在实际的开发场景中,经常会遇到需要开发各种 调试工具 模拟工具的场景。对于这样的场景,不可避免要调用项目的流程或者取项目的运行时状态,以进行分析。

1. 对于简单调试,可以通过 下面的指令进入交互式命令行来调试

python manage shell

2. 对于复制的调试和模拟,可以通过脚本的方式调试。但是脚本要连接上工程项目要做一定的设置(如下):

import os
import sys
import django
PROJECT_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(PROJECT_ROOT)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "nfvpub.settings")
django.setup()

3. 对于无法进入pod(容器)的场景,可以通过执行sh指令 获取环境变量 等方式获取对应的ip和端口,然后通过对应的ip和端口调用rest方法来获取相应的数据

def get_port_and_ip(self):
        ss = os.popen('kubectl -n zenap get po |grep xxx').readlines()
        podname = ss[0].split(' ')[0]
        cmd1 = 'kubectl -n zenap exec -ti  %s -- env|grep xxx' % podname
        cmd2 = 'kubectl -n zenap exec -ti  %s -- env|grep xxx' % podname
        ipp = os.popen(cmd1).readlines()
        portt = os.popen(cmd2).readlines()
        ip = ipp[0].split('=')[1][:-2]
        port = portt[0].split('=')[1][:-2]
        return ip,port

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值