api-gateway实践(06)新服务网关 - 请求监控
一、实时监控
用户点击服务实例,系统显示服务实例-version下的api列表,
用户点击某个api的如下两个图标
1、API请求次数监控
横轴:时间,粒度为分钟
纵轴:请求访问次数
展示:失败数(红)、成功数(绿)、总数(黄)。
存储:
- 请求结束时,累计成功数到 instId_api_20171852_suc_cnt
- 请求结束时,累计失败数到 instId_api_20171852_err_cnt
- 请求结束时,累计调用总数到 instId_api_20171852_all_cnt
2、API请求时长监控
横轴:时间,粒度为分钟
纵轴:请求访问时长
展示:网关平均成功时长(绿)、服务端平均成功时长(黑)
存储:
- 请求结束时,累计网关成功时长到 instId_api_20171852_suc_len
- 请求结束时,累计服务端成功时长到 instId_svc_20171852_suc_len
3、记录到redis存储
redis中上述数据设置为默认120分钟失效,
以上1、2完成时,记录【请求监控统计日志】到elk。
二、日志格式
1、请求开始日志
请求日志 请求id 请求开发者 apiId 服务实例 网关请求url 客户端 网关开始时间 服务端开始时间 服务端结束时间 网关结束时间 客户端地址 成功/失败 服务提供者
@requestLog@@requestId@@devClientKey@@group-version-api@@网关url@ @instId@@apiReqTime@@svcReqTime@@svcResTime@@apiResTime@@clientHost@@succFlag/failFlag@@svcClientKey@
2、签名比对日志
签名比对失败 请求id apiId 服务实例 成功失败
@verifySign@ @requestId@ @group-version-api@ @instId@ @succFlag/failFlag@
3、请求监控统计日志(定时收集发送)
@devClientKey@ @instId@ @group-version-api@ @日期时间@ @小时@ @分钟@
@成功数@ @失败数@ @总数@
@网关平均请求响应时长(成功)@ @网关平均请求响应时长(失败)@
@服务端平均请求响应时长(成功)@ @服务端平均请求响应时长(失败)@
三、评审建议(传集)
1、监控指标缺少api url总的调用次数,api组的总调用次数
回复:API请求监控已经纳入,含三项指标:请求累计成功、累计失败和累计总数
2、缺少开发者视角的相关统计
回复:根据使用实例的监控,可以开放给开发者和管理员
3、监控功能应该包括top排行,比如一天内的总请求次数排行,消耗时长排行。类似druid的功能
回复:入库后再考虑!

4、日志:建议把url直接记录在日志中,不用再通过id进行查询。
回复:日志已经记录
api-gateway实践(06)新服务网关 - 请求监控的更多相关文章
- api-gateway实践(10)新服务网关 - OpenID Connect
网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: https ...
- 阿里云API网关(13)请求身份识别:客户端请求签名和服务网关请求签名
网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: https ...
- api-gateway实践(02)新服务网关 - 运行环境
一.服务网关的运行环境 1.服务配置中心 1.1.服务配置中心前台 前台 http://10.110.17.20/#/login:无源码,德奎部署在10.110.17.20的DockerStatck环 ...
- api-gateway实践(03)新服务网关 - 网关请求拦截检查
参考链接:http://www.cnblogs.com/jivi/archive/2013/03/10/2952829.html 一.为什么要拦截检查请求? 防止重放攻击.篡改重放,进行使用规格检查 ...
- api-gateway实践(04)新服务网关 - 新手入门
一.网关引擎环境 1.下载代码 2.搭建环境 3.打包部署 二.配置中心环境 1.下载代码 2.搭建环境 3.打包部署 三.创建业务实例 1.以租户身份登录配置中心,注册 group.version. ...
- api-gateway实践(13)新服务网关 - 断路保护/熔断机制
参考链接:SpringCloud的Hystrix(五) Hystrix机制 新需求列表 1.在线测试 根据定义,生成输入界面, 点击测试, 验证参数,发起调用,返回执行结果 2.熔断保护 两个实现类: ...
- api-gateway实践(08)新服务网关 - 云端发布和日志查看
一.发布应用 1.新建应用空间 1.1.新建应用空间 1.2.新建应用 1.3.上传程序包 2.创建应用引擎服务 3.发布应用 3.1.为应用容器绑定Web运行环境(应用引擎服务) 3.2.发布应用( ...
- api-gateway实践(07)新服务网关 - 手动发布
应用地址:http://10.110.20.191:8080/api-gateway-engine/ 一.准备工作 1.xshell登陆云主机 1.1.配置链接 1.2.链接成功 1.3.关闭防火墙 ...
- [转载] 构建微服务:使用API Gateway
原文: http://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=206889381&idx=1&sn=478ccb35294c ...
随机推荐
- 【转】UML的9种图例解析
UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中, ...
- springboot 整合 MongoDB 实现登录注册,html 页面获取后台参数的方法
springboot简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不 ...
- 初学Python3 - 写一个登录程序
本篇主要实现一个简单的登录程序,默认给出一个账号密码,贴出写的代码及过程中遇到的问题. ----------------------------------------要求如下: username p ...
- nodejs轻量级时间格式化组件Moment.js的使用例子
在项目中,经常使用时间进行格式化的输出,以及转换,同时做时间的统计,原本js原生的时间函数比较复杂繁琐,不适合快速开发使用. 轻量级的moment.js很好的解决了这些问题. 下面以简单的例子进行mo ...
- WinSock 异步I/O模型-3
重叠I/O(Overlapped I/O) 在 Winsock 中,重叠 I/O(Overlapped I/O)模型能达到更佳的系统性能,高于之前讲过的三种.重叠模型的基本设计原理便是让应用程序使用一 ...
- Docker + webpack 打包前端项目
码云代码地址: https://gitee.com/caonimashi/docker_deployment_front_end 构建基础镜像: 1.下载一个 Apline Linux 操作系统 ...
- WebPack的安装
一.前提因为webpack是一个基于node的项目,所以首先需要确保你的电脑里面已经安装了node.js,以及npm.在这里我使用的版本是:node:v5.8.0 ,npm:3.7.3,若是版本问题, ...
- sharepoint REST API 获取文件夹及文件
使用REST操作文件夹: 获取文件夹 url: http://site url/_api/web/GetFolderByServerRelativeUrl('/Shared Documents')/f ...
- RabbitMQ 通信过程
Rabbit MQ的通信过程 MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,是消费-生产者模型的典型的代表,producer往消息队列中不断写入消息,而另一端consume ...
- NVL2 这个函数,
NVL2(expr1,expr2,expr3) 如果参数表达式expr1值为NULL,则NVL2()函数返回参数表达式expr3的值:如果参数表达式expr1值不为NULL,则NVL2()函数 ...