Commit 45835ff1 authored by zhouzihao's avatar zhouzihao

doc-add Readme

parent fdb908e8
# java-devop-sentry # java-devop-sentry
> sentry 为哨站的意思。
# Overview # Overview
定期请求接口,检查是否成功。如果失败累计到一定程度。发送邮件(或者其他形式) 定期请求接口,检查是否成功。如果失败累计到一定程度。发送邮件(或者其他形式)
来进行提醒。 来进行提醒。
...@@ -9,10 +11,85 @@ ...@@ -9,10 +11,85 @@
- 正常接口请求一组的时间间隔为5秒钟(配置的),也就是一分钟请求了12次。 - 正常接口请求一组的时间间隔为5秒钟(配置的),也就是一分钟请求了12次。
- 可以设置接口在时间段内出错个数。可以设置一个阈值。(建议设置成6次)。 - 可以设置接口在时间段内出错个数。可以设置一个阈值。(建议设置成6次)。
## Deploy
修改配置
```yaml
vandyo:
# 不登录登录 使用
sid: 38201fe198ef43b68f6bcf6101bc2970
uid: 860a776c832749ce86754d59c7ca9fca
# 登录使用
mobile: 18623414467
pwd: 5f83f54fb34e2eed0439d37d80f5b1a3
checkmeta:
# 接口名称配置
desMap:
"[/car/my_car/info]": 车辆信息
"[/car/car_detect]": 车体检
"[/car/my_car/list]": 车列表
"[/carDynamic/api/status/car/state/get]": 车动态
test: 测试接口
# 接口错误阈值 每分钟 (x/12) x 是报错数 大于等于
timeMap:
"[/car/my_car/info]": 6
"[/car/car_detect]": 6
"[/car/my_car/list]": 6
"[/carDynamic/api/status/car/state/get]": 6
test: 2
```
# 项目结构 # 项目结构
```text
com.vandyo.sentry.core
```
# TODO
# 开发文档
项目主要又三个部分组成。
- 接口发送器(发送要测试的接口请求)
- 数据检查收集器 (收集错误信息并且检查规则)
- 数据处理器 (在符合要求后作出相应动作,比如发送邮件)
## 接口发生器扩展开发
接口调用存在依赖关系。基本调用存在下面两种模式。
```text
A --> B
A -+--> B
+--> B'
```
- 一个接口依赖调用
- 多个依赖一个接口,且不互相影响。
接口调用使用了。装饰器模式来区分开始节点和被依赖的节点。后续调用都是可以用装饰器的形式来写。
但是没有解决并发问题,即第二种调用方式还在使用第一种串行的方式,后续会进行改进。
也就是说扩展接口可以写成装饰器的形式。要传递的参数可以写到Res返回的Map中。
开始节点可以继承Case.而不是装饰器。也可以写成装饰器,使用EmyptyCase作为开始即可。
## 数据收集器
收集器使用静态方法,并且使用静态方法进行规制检查。相对比较简单。
但是代码会侵入到Case的子类中。后续会进行优化。
检查规则。使用简单的map遍历。每一分钟检查一次。
## 数据处理器
继承DataClearDealer抽象类即可。里面已经实现了数据的格式化。只要正常发送信息即可。
如果要实现新的逻辑,实现这个类。加入dealer数组中即可。
## 数据处理器。
# TODO
- [ ] 邮件配置列表
- [ ] 更多接口支持
- [ ] 相同接口依赖并发支持
- [ ] 接口调用插件配置化
- [ ] 更通用化的空案例
- [ ] 统一接口出参验证封装
- [ ] 数据收集器依赖解耦
# ChangeLog # ChangeLog
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment