一、实时监控

用户点击服务实例,系统显示服务实例-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. git上传项目到github简易步骤

    第一步: 在github创建仓库,创建完成进入该仓库,仓库地址如:https://github.com/winerss/wcMall格式 第二步:使用git,cd到本地项目目录下,执行git明令: g ...

  2. ETL总结(扫盲版)

      1.ETL名词解释 英文缩写 Extract-Transform-Load ,用来描述将数据从来源端经过抽取(extract).转换(transform).加载(load)至到目的端(一般指的是数 ...

  3. python web开发-flask中的url带斜线和不带斜线区别详解

    通过flask进行路由配置的时候,有一个细节,就是同样的url,带上"/"和不带"/"有什么区别. 举例说明: 比如有个url,名字为"/url&qu ...

  4. 用firefox 31配合KeePass密码管理器实现web帐号密码自动填写登录

    原文:http://bbs.kafan.cn/thread-1754676-1-1.html KeePass的优势:1.这是一款完全开源的密码管理器2.很多人都使用lastpass来保存密码,而这种严 ...

  5. Python 3.6.4 / win10 使用pip安装keras时遇到依赖的PyYAML安装出错

    PS C:\Users\myjac\Desktop\simple-chinese-ocr> pip install keras Collecting keras Downloading http ...

  6. Flume - Kafka日志平台整合

    1. Flume介绍 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供 ...

  7. 基于TODO的开发方法

    之前买了一本书,叫<架构探险-从零开始写Java Web框架 >(不推荐购买-),一本标题党书籍!但是我很推崇作者写代码的方式,就是基于TODO的方式进行开发! 个人认为以基于TODO的方 ...

  8. PAT 个位数统计

    描述 给定一个k位整数N = dk-1*10k-1 + ... + d1*101 + d0 (0<=di<=9, i=0,...,k-1, dk-1>0),请编写程序统计每种不同的个 ...

  9. docker部署PMA(LNMP架构)

    上篇文章中已经部署好php环境,测试也已经OK centos 7 docker 启动了一个web服务 但是启动时 报 WARNING: IPv4 forwarding is disabled. Net ...

  10. 大数据 --> Hadoop集群搭建

    Hadoop集群搭建 1.修改/etc/hosts文件 在每台linux机器上,sudo vim /etc/hosts 编写hosts文件.将主机名和ip地址的映射填写进去.编辑完后,结果如下: 2. ...