接口监控

2016-04-26  本文已影响0人  cupertino

一.数据要求及存储设计

接口划分:
 一级:以功能模块划分(如用户api,交易api,类目部分等)
 二级:某模块下的具体接口名称
 三级:根据接口的具体参数(header等),唯一确定一个接口     

接口表:

字段 类型 示例 注释
id int 1 接口id(参数类型确定)
frist_key varchar kongge.shz.user 接口一级分类
second_key varchar kongge.shz.user.getMainPage 一级分类下的二级分类,表示一个接口
name varchar /shz/1.0/user/getMainPage 接口名称
parament varchar /{"userId":3} json格式请求参数
ret_value varchar {"success":ture} json格式返回值
request_type tinyint(2) 0 请求类型. 0:get 1:post
protocol tinyint(2) http 协议类型. 0:http 1:https
name varchar /shz/1.0/user/getMainPage 接口名称
header varchar X-shz-AppIp:1 header数据

二.数据获取

1.人工配置
1.增加接口
   填写接口名、请求类型,协议类型
2.填写接口信息
   请求参数
   返回值
2.自动记录
1.通过charles抓包工具,export session 为xml文件
2.反序列化xml文件,提取接口信息(request,head等)
3.入库

三.监控

功能:
1.可以选择监控的接口(全部,一级分类,二级分类)
2.对监控结果的分析,实时反馈接口的状态
实现:
1.搭建一个spring框架的工程。
2.根据前台的请求,到db中获取要测试的接口数据执行测试,
  对返回数据和期望数据进行对比,得出接口的状态
3.通过定时任务完成不间断的监控

get请求:

get(method, pathArgs, header, config, callback)
method:api接口名称
pathArgs:路径参数
header:头部
config: 配置,协议类型、线上还是沙箱等其他可配需求
callback:回调函数,包含错误参数err和响应body

post请求:

post(method, pathArgs, header, config, callback)
method:api接口名称
pathArgs:路径参数
header:头部
config: 配置,协议类型等其他可配需求
callback:回调函数,包含错误参数err和响应body

四.问题

1.接口的返回结果依赖于crm端的审核状态,状态不同,返回结果不 
   同
2.数据存储在库中还是序列化到xml中
3.是多线程并发去请求还是串行
上一篇 下一篇

猜你喜欢

热点阅读