• 幕客老师召集小伙伴
  • python自动化运维项目实战
  • nginx从入门到实战
  • 阿里云与Centos7实战

python脚本线性测试某一url连接质量

公司反应说:‘App端偶尔会出现调用接口连接不上,导致客户端白屏幕’

所以写了个脚本,连续的通过公司内网连接请求某一个接口,判断请求超时情况:

这个脚本实现:

1、自定义中断,通过新建一个文件( /tmp/close.status),执行中断。

2、实现状态信息统计

 

脚本如下:

# -*- coding: utf-8 -*-
#!/usr/bin/env python
__author__ = 'Jeson@imoocc.com'

import urllib3
urllib3.disable_warnings()
import json
import os
import sys
import time

url = 'https://www.jesonc.com'
count = 0
sucess_c = 0
timeout_c = 0
while True:
    time.sleep(1)
    count = count + 1
    if os.path.exists('/tmp/close.status'):
        print(''' Total:%s,Success:%s,Timeout:%s
        '''%(count,sucess_c,timeout_c))
        sys.exit()
    start_time = time.time()
    try:
        http = urllib3.PoolManager()
        r = http.request('GET',url,timeout=2)
    except Exception as e:
        print("Error:%s"%e)
        timeout_c = timeout_c + 1
        continue

    if r.status == 200:
        res = json.loads(r.data)
        if res['code'] == 1000:
            sucess_c = sucess_c + 1
            end_time = time.time()
            req_time = end_time - start_time
            if req_time > 2:
                timeout_c = timeout_c + 1
                print("Connect Timeout 2s,Used:%s s",req_time)
            # print("Connect success! %s "%sucess_c)



    else:
        print('Connettion error! status %s'%r.status)

 

python脚本线性测试某一url连接质量

Pingbacks已打开。

引用地址

暂无评论

发表评论