zoukankan      html  css  js  c++  java
  • Spring cloud微服务安全实战-7-7自定义metrics监控指标(2)

    Gauge用来显示单词一个数的


    勾选,这里编程仪表盘

    设置仪表盘的最大值、最小值


    保存


    直接保存

    保存成功的提示

    返回

    这就是我们做的一个简单的仪表盘

    这个不适合我们的counter,因为没有最大值 ,上限。
    可以拖动调整大小。

    折线图

    一段时间内访问量的曲线,波动情况。启动我们这个测试类,以1秒10次的频率去访问我们的订单接口。

    让测试类在后面跑着,然后我们加一个面板





    选择数据源


    rate是用的最多的一个函数,在采集到的数据之上去做计算。rate就是计算指定范围内每秒的数据量。


    按照我这个代码来说的话,我1秒钟要发10次请求。

    创建订单的请求,每秒的请求数

    方括号里面写计算多长时间内的。做一个平均。因为是10秒抓一次数据。

    保存这个图形。

    summary

    百分比的数据分布统计图。

    监控某一个服务的服务响应时间。
    我的请求99%的请求都在指定的时间内有响应,就表示我的服务是健康的,剩下1%的请求有问题。我认为是正常的。。
    监控99%的请求的响应时间,然后到达 一个预值后,给我发报警。这就可以用Summary来实现。

    首先要声明一个Summary

    summary是一个数据分布统计图。要告诉它你想统计的数据分布的分类数是多少。你要定义一堆指标。说着说是百分比。
    给我统计出一个50%的分位数。这个值我允许有5%的误差。这是两个参数的意义。

    90%的分位数,允许有1%的的误差。

    加入我有10 个请求,响应时间分别是10毫秒、20、30、40......100毫秒.
    50%的请求可以在50毫秒内返回。
    0.9的分位数,应该是在啊90毫秒。90%的请求是可以在90毫秒内返回的。

    他就是统计50%的请求在多少毫秒内返回。
    90%的请求可以在多少毫秒内返回。

    用这个Summary来统计请求的响应时间

    注入requestLatency,覆盖preHandler请求之前的方法,要在请求之前记录下时间,请求之后再记录下时间。这样就知道请求花了多长时间了。


    记录了请求之前的时间





    修改orderController的方法 ,休眠时间设置成一个随机数。先添加一个lang3的包

    请求 休眠子啊100到1000毫秒之间


    启动orderAPI


    测试类也启动起来。测试类这里的休眠就不sleep了。因为controller里面的方法已经sleep了。

    查看拿到的数据。


    count:当前指标一共收到了多少请求。38次请求。

    sum:38次请求一共花了20秒。50

    50%的请求都在509毫秒响应了。90%的请求在921毫秒内响应。

    grafana内增加仪表展示

    在grafana里面加个面板展示出来这些数据就可以了。





    90%的请求的响应时间是927毫秒。



    结束

  • 相关阅读:
    leetcode 之Jump Game
    leetcode 之 Symmetric Tree
    leetcode 之 House Robber
    设计模式之建造者模式
    centos7 yum tab 补全
    设计模式之适配器模式
    设计模式之状态模式
    设计模式之外观模式
    设计模式之模板方法模式
    对以<uses-permission android:maxSdkVersion="xx" /> 中的说明
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/12010325.html
Copyright © 2011-2022 走看看