开源API探测管理工具-apimonitor
一、apimonitor
1. apimonitor简介
apimonitor是一个api接口监控项目,可以模拟探测http接口、http页面,通过请求耗时和响应结果来判断系统接口的可用性和正确性。
2. apimonitor功能
· 支持单个API和多个API调用链的探测。
· 支持页面探测,可以模拟页面操作过程,比如打开登陆页面,登陆,跳转到登陆后页面;
· 支持HTTP和HTTPS,请求类型可以是GET,POST,HEADER,PUT,DELETE
· 支持通用的HTTP认证,比如BASIC认证,COOKIES认证等
· 调用API可以设置请求头部,请求参数。在API调用链过程中,上一个API的返回结果可以作为下一个API的请求参数;
· 可以自定义探测结果判定,比如接口返回状态码为200,返回内容包括/不包括exception等;
· 可以自定义监控频率,比如30分钟/次,1小时/次
· 监控日志定期清理
· 支持导入postman脚本,可以大幅度减低配置复杂页面监控的工作量。使用postman工具捕捉HTTP请求,生成postman脚本,然后导入到监控系统。
3. 技术架构
· 技术框架:maven、Spring Boot、Mybatis、SpringMVC
· 技术组件:HttpClient、Quartz、fastjson、dom4j
· UI技术:sitemesh、thymeleaf、bootstrap、adminlte
4. 运行环境
· jdk8
· tomcat
· mysql
5. 代码及文档地址
https://gitee.com/ecar_team/apimonitor
二、部署步骤
1. 拉取代码
git clone https://gitee.com/ecar_team/apimonitor
生产环境需本地拉取后打包上传
2. 修改数据库建表sql
修改db/db.sql文件
修改此处varchar(2000)为text(4294967295)
*注:这个字段是请求参数的长度限制,若为varchar(2000)不满足调用base64请求长度*
3. 前往mysql建库并导入建表sql
创建apimonitor库,并导入db/db.sql建表
create database apimonitor;
use database apimonitor;
source /opt/apimonitor/db/db.sql;
4. 修改jar包配置
jar包在dist/apimonitor-0.0.1-SNAPSHOT.jar
打开jar包,修改/BOOT-INF/classes目录下的application.properties文件,修改url、username、password
5. 运行jar包
java -jar apimonitor-0.0.1-SNAPSHOT.jar
*注:使用端口8080*
6. 访问验证
项目启动后,直接在浏览器输入http://localhost:8080,就可以访问。
三、apimonitor功能使用
1. 单api监控设置
2. 多api监控设置
配置方式同单api监控