一、实时监控

用户点击服务实例,系统显示服务实例-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)新服务网关 - 请求监控的更多相关文章

  1. api-gateway实践(10)新服务网关 - OpenID Connect

    网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: https ...

  2. 阿里云API网关(13)请求身份识别:客户端请求签名和服务网关请求签名

    网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: https ...

  3. api-gateway实践(02)新服务网关 - 运行环境

    一.服务网关的运行环境 1.服务配置中心 1.1.服务配置中心前台 前台 http://10.110.17.20/#/login:无源码,德奎部署在10.110.17.20的DockerStatck环 ...

  4. api-gateway实践(03)新服务网关 - 网关请求拦截检查

    参考链接:http://www.cnblogs.com/jivi/archive/2013/03/10/2952829.html 一.为什么要拦截检查请求? 防止重放攻击.篡改重放,进行使用规格检查 ...

  5. api-gateway实践(04)新服务网关 - 新手入门

    一.网关引擎环境 1.下载代码 2.搭建环境 3.打包部署 二.配置中心环境 1.下载代码 2.搭建环境 3.打包部署 三.创建业务实例 1.以租户身份登录配置中心,注册 group.version. ...

  6. api-gateway实践(13)新服务网关 - 断路保护/熔断机制

    参考链接:SpringCloud的Hystrix(五) Hystrix机制 新需求列表 1.在线测试 根据定义,生成输入界面, 点击测试, 验证参数,发起调用,返回执行结果 2.熔断保护 两个实现类: ...

  7. api-gateway实践(08)新服务网关 - 云端发布和日志查看

    一.发布应用 1.新建应用空间 1.1.新建应用空间 1.2.新建应用 1.3.上传程序包 2.创建应用引擎服务 3.发布应用 3.1.为应用容器绑定Web运行环境(应用引擎服务) 3.2.发布应用( ...

  8. api-gateway实践(07)新服务网关 - 手动发布

    应用地址:http://10.110.20.191:8080/api-gateway-engine/ 一.准备工作 1.xshell登陆云主机 1.1.配置链接 1.2.链接成功 1.3.关闭防火墙 ...

  9. [转载] 构建微服务:使用API Gateway

    原文: http://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=206889381&idx=1&sn=478ccb35294c ...

随机推荐

  1. java web(转)

    装载:http://www.oschina.net/question/12_52027 OSCHINA 软件库有一个分类——Web框架,该分类中包含多种编程语言的将近500个项目. Web框架是开发者 ...

  2. 删除项目中的.pyc文件

    在编写python项目的时候,往往会生成很多的.pyc文件,但是在我们提交代码的时候这些.pyc文件又是不必要的,所以需要对项目里面的.pyc文件进行清理.再此,经过我的查阅资料和尝试,分享出以下方法 ...

  3. 九大排序算法的Java实现

    1.冒泡排序 package Sort; import java.util.Arrays; public class BubbleSort { public static void main(Stri ...

  4. 元素化设计原理及规则v1.0

    一.元素设计架构 元素设计架构展示在基于元素化设计的思想下,系统各元素之间如何相互协作,并完成整个系统搭建. 架构中以Entity(数据)为中心,由Entity产生数据库表结构,并且Entity作为业 ...

  5. 快速创建 HTML5 Canvas 电信网络拓扑图

    前言 属性列表想必大家都不会陌生,正常用 HTML5 来做的属性列表大概就是用下拉菜单之类的,而且很多情况下,下拉列表还不够好看,怎么办?我试着用 HT for Web 来实现属性栏点击按钮弹出多功能 ...

  6. openstack中的环境准备

    openstack中环境准备基于Ubuntu系统 author:headsen chen   2017-10-13  11:51:50 个人原创,转载请注明作者,出处. 6 apt-get insta ...

  7. 一个类似抖音 APP 拍摄按钮效果的控件

    TouchButton 一个类似抖音 APP 拍摄按钮效果的控件 效果图预览 用法 <net.angrycode.library.TouchButton android:id="@+i ...

  8. 怎么看 EOS 的代码最爽?

    进入 EOS 的世界之前,愉快地看系统代码是第一步,试了 Visual Studio / Source Insight / Understand / Sublime 等多款 IDE / 编辑器后,强烈 ...

  9. 请详细描述(以硬盘启动)Linux系统从打开主机电源到进入登录界面整个过程的流程。

    1. 开机进行BIOS(BIOS(Basic Input / Output System)自检测系统外围硬件设备如CPU.内存.IO.显卡.鼠标键盘等.根据BIOS中设置的系统启动顺序搜索用于启动系统 ...

  10. JQ在光标处插入文字

    内容转载自网络这是一个JQ的扩展方法.在teatarea获得焦点时,往光标处插入文字,扩展代码如下 (function($){ $.fn.extend({ "insert":fun ...