草庐IT

误差指标

全部标签

nginx源码层面探究request_time、upstream_response_time、upstream_connect_time与upstream_header_time指标具体含义与区别

背景概述最近计划着重分析一下线上各api的HTTP响应耗时情况,检查是否有接口平均耗时、99分位耗时等相关指标过大的情况,了解到nginx统计请求耗时有四个指标:request_time、upstream_response_time、upstream_connect_time与upstream_header_time,在查找资料的过程中,发现无论是nginx官方文档还是热心网友们的分享,都并没有让自己感觉特别详细、明白地说清楚了这四个指标详细具体含义的资料,于是自己动手探究了一番nginx源码,尝试从其中找出这4个指标的代码级别具体含义。特别说明:本文代码分析基于nginx1.10.0版本,从

nginx源码层面探究request_time、upstream_response_time、upstream_connect_time与upstream_header_time指标具体含义与区别

背景概述最近计划着重分析一下线上各api的HTTP响应耗时情况,检查是否有接口平均耗时、99分位耗时等相关指标过大的情况,了解到nginx统计请求耗时有四个指标:request_time、upstream_response_time、upstream_connect_time与upstream_header_time,在查找资料的过程中,发现无论是nginx官方文档还是热心网友们的分享,都并没有让自己感觉特别详细、明白地说清楚了这四个指标详细具体含义的资料,于是自己动手探究了一番nginx源码,尝试从其中找出这4个指标的代码级别具体含义。特别说明:本文代码分析基于nginx1.10.0版本,从

使用 shell 脚本自动获取发版指标数据

问题背景大一点的公司都会建立一套规章流程来避免低级错误,例如合入代码前必需经过同行评审;上线前必需提测且通过QA验证;全量前必需经过1%、5%、10%、20%、50%的灰度过程。尤其是最后一步,需要严密的监控发版指标来保证新版本的质量,如果与主力版本的指标相比有异常变动,就需要及时停止放量并分析原因。一个版本的重点观察指标,除崩溃率外有小20项,分布在系统的10多个页面,且每个指标均需要指定多达6-10个过滤条件,最常用的包括版本号、端类型(PC/Mac/Android/iOS/…)、用户类型(user/vip/svip),此外还有一些复杂的下拉列表选项,每次都记不住,需要参考文档才能确定选对

使用 shell 脚本自动获取发版指标数据

问题背景大一点的公司都会建立一套规章流程来避免低级错误,例如合入代码前必需经过同行评审;上线前必需提测且通过QA验证;全量前必需经过1%、5%、10%、20%、50%的灰度过程。尤其是最后一步,需要严密的监控发版指标来保证新版本的质量,如果与主力版本的指标相比有异常变动,就需要及时停止放量并分析原因。一个版本的重点观察指标,除崩溃率外有小20项,分布在系统的10多个页面,且每个指标均需要指定多达6-10个过滤条件,最常用的包括版本号、端类型(PC/Mac/Android/iOS/…)、用户类型(user/vip/svip),此外还有一些复杂的下拉列表选项,每次都记不住,需要参考文档才能确定选对

如何精简 Prometheus 的指标和存储占用

前言随着Prometheus监控的组件、数量、指标越来越多,Prometheus对计算性能的要求会越来越高,存储占用也会越来越多。在这种情况下,要优化Prometheus性能,优化存储占用.第一时间想到的可能是各种Prometheus的兼容存储方案,如Thanos或VM、Mimir等。但是实际上虽然集中存储、长期存储、存储降采样及存储压缩可以一定程度解决相关问题,但是治标不治本。真正的本,还是在于指标量(series)过于庞大。治本之法,应该是减少指标量。有2种办法:Prometheus性能调优-解决高基数问题根据实际使用情况,只保留(keep)展示(GrafanaDashboards)和告警

如何精简 Prometheus 的指标和存储占用

前言随着Prometheus监控的组件、数量、指标越来越多,Prometheus对计算性能的要求会越来越高,存储占用也会越来越多。在这种情况下,要优化Prometheus性能,优化存储占用.第一时间想到的可能是各种Prometheus的兼容存储方案,如Thanos或VM、Mimir等。但是实际上虽然集中存储、长期存储、存储降采样及存储压缩可以一定程度解决相关问题,但是治标不治本。真正的本,还是在于指标量(series)过于庞大。治本之法,应该是减少指标量。有2种办法:Prometheus性能调优-解决高基数问题根据实际使用情况,只保留(keep)展示(GrafanaDashboards)和告警

详解Prometheus四种指标类型

指标是用来衡量性能、消耗、效率和许多其他软件属性随时间的变化趋势。它们允许工程师通过警报和仪表盘来监控一系列测量值的演变(如CPU或内存使用量、请求持续时间、延迟等)。指标在IT监控领域有着悠久的历史,并被工程师广泛使用,与日志和链路追踪一起被用来检测系统是否有不符合预期的表现。 在其最基本的形式中,一个指标数据点是由以下三个部分构成: 一个指标名称收集该数据点的时间戳一个由数字表示的测量值 在过去的十年里,随着系统变得越来越复杂,出现了维度度量的概念,也就是说,度量还包括一组标签或标识(即维度),以提供额外的上下文。支持维度指标的监控系统允许工程师通过查询特定的指标名称,并通过标签进行过滤和

详解Prometheus四种指标类型

指标是用来衡量性能、消耗、效率和许多其他软件属性随时间的变化趋势。它们允许工程师通过警报和仪表盘来监控一系列测量值的演变(如CPU或内存使用量、请求持续时间、延迟等)。指标在IT监控领域有着悠久的历史,并被工程师广泛使用,与日志和链路追踪一起被用来检测系统是否有不符合预期的表现。 在其最基本的形式中,一个指标数据点是由以下三个部分构成: 一个指标名称收集该数据点的时间戳一个由数字表示的测量值 在过去的十年里,随着系统变得越来越复杂,出现了维度度量的概念,也就是说,度量还包括一组标签或标识(即维度),以提供额外的上下文。支持维度指标的监控系统允许工程师通过查询特定的指标名称,并通过标签进行过滤和

使用SkyWalking-go2sky收集Golang运行时指标技术

需求理解本次项目,是将go2sky作为agent,在用户的代码中导入,并借助go2sky收集golangruntimemetrics,并将metrics上报到skywalking-OAP,skywalking-OAP提供对应的UI进行展示。最终呈现给用户的应该类似下面的界面:设计方案总体流程收集golangruntimemetrcis的设计分为go2Sky和skywalkingOAP两个模块:go2Sky完成对golangruntimemetrcis的收集并通过gRPC上报到skywalkingOAPskywalkingOAP接收来自go2sky的数据,并对数据进行处理并持久化客户端方案客户端

使用SkyWalking-go2sky收集Golang运行时指标技术

需求理解本次项目,是将go2sky作为agent,在用户的代码中导入,并借助go2sky收集golangruntimemetrics,并将metrics上报到skywalking-OAP,skywalking-OAP提供对应的UI进行展示。最终呈现给用户的应该类似下面的界面:设计方案总体流程收集golangruntimemetrcis的设计分为go2Sky和skywalkingOAP两个模块:go2Sky完成对golangruntimemetrcis的收集并通过gRPC上报到skywalkingOAPskywalkingOAP接收来自go2sky的数据,并对数据进行处理并持久化客户端方案客户端