# micrometer-samples **Repository Path**: wbihua/micrometer-samples ## Basic Information - **Project Name**: micrometer-samples - **Description**: No description available - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-15 - **Last Updated**: 2024-11-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # micrometer-samples http://127.0.0.1:18081/management/prometheus http://127.0.0.1:18080/v1/get/1111 PromQL--Counter(计数器) 单位:ms、s、m、h、d、w、y 时间串联:[1h5m]一小时5分钟 计算了过去5分钟内每秒的平均请求数: rate(tag_http_requests_total_request_total{path="/v1/get/3333"}[5m]) {} 称为选择器,= 是等式,还有 != 不等、=~ 正则等、!~ 正则不等。 irate函数是通过区间向量中最后两个两本数据来计算区间向量的增长速率,反应出的是瞬时增长率 irate(tag_http_requests_total_request_total{path="/v1/get/3333"}[5m]) without用于从计算结果中移除列举的标签,而保留其它标签 sum without(path)(rate(http_request_count_total[5m])) avg max min count sum by则正好相反,结果向量中只保留列出的标签,其余标签则移除: sum(http_requests_total) by (code,method) http_requests_total{code="200", method="GET"} => 100 http_requests_total{code="404", method="GET"} => 50 http_requests_total{code="200", method="POST"} => 30 获取HTTP请求数前5位的时序样本数据: topk(5, http_requests_total) 查询最近一小时内增长最快的10个HTTP请求路径: topk(10, delta(http_requests_total[1h])) 内置函数delta()计算区间向量第一个值和最后一个值的差值 找到当前样本数据中的中位数 quantile(0.5, http_requests_total) 返回一个double数据 quantile‌:可以用于Counter类型指标,用于计算累计分布函数的分位数。它通过接收一个Counter类型的指标和一个时间范围,计算在该时间范围内的累计分布函数的分位数‌ quantile应该也不可以,待验证。 histogram_quantile函数设计用于处理Histogram和Summary类型的指标,不能直接用于Counter类型指标。 increase函数获取区间向量中的第一个后最后一个样本并返回其增长量。 通过以下表达式Counter类型指标的增长率: increase(http_requests_total[2m]) / 120 PromQL--Gauge(计数器) 和Counter一样 这个表达式的含义是:对tag_http_requests_total_request_total这个Gauge在过去10分钟内的数据进行线性拟合,并预测接下来一个小时(3600秒)的负载值。 predict_linear(tag_http_requests_total_request_total{path="/v1/get/3333"}, 3600, 10m) PromQL--Summary Summary指标在PromQL中主要用于计算样本的分位数,类似于Histogram,但会在客户端直接计算并上报分位数。 Summary指标用于记录数据的分布情况,并在客户端直接计算并上报分位数,如平均值、标准差等。它类似于Histogram,但不需要在服务器端进行额外的计算,从而减少了计算资源的消耗‌ 数值区间的累计计数器,显示为 _bucket{le="<数值区间的上边界>"} 所有观测值的总和,显示为 _sum 统计到的事件计数,显示为 _count (与上述 _bucket{le="+Inf"} 相同) 观测每秒收到多少请求: rate(http_requests_status_seconds_summary_MILLISECONDS__count[1m]) http_requests_status_seconds_summary_MILLISECONDS_bucket{path="/v1/get/3333"} 横坐标为:le,纵坐标为数值区间的累计计数器。 在Histo或者summary上计算5分钟内的平均请求时长: rate(http_requests_status_seconds_summary_MILLISECONDS_sum[5m])/rate(http_requests_status_seconds_summary_MILLISECONDS_count[5m]) 计算过去 10 分钟内 第 90 个百分位数: histogram_quantile(0.9, rate(http_requests_status_seconds_summary_MILLISECONDS_bucket[10m])) {instance="10.0.86.71:8080",job="prometheus"} 35.714285714285715 这表示最近 10 分钟之内 90% 的样本的最大值为 35.714285714285715。 计算在5分钟内,95%的请求响应时间小于或等于某个阈值的情况‌ histogram_quantile(0.95, sum(rate(http_requests_status_seconds_summary_MILLISECONDS_bucket[5m])) by (le)) #### 介绍 {**以下是 Gitee 平台说明,您可以替换此简介** Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} #### 软件架构 软件架构说明 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)