《🌹全方位立体监控告警》
文章平均质量分 72
记录全方位立体监控告警的学习和总结
日志、指标、事件、链路、监控检查、告警
lakernote
不停的复盘自己,砥砺前行,不忘初衷
展开
-
可观测性-Metrics-WebClient异步Http远程Call
您可以通过设置属性来自定义名称。默认情况下,生成的指标名称为。自定义标签,提供一个实现自。原创 2023-10-18 17:10:48 · 651 阅读 · 0 评论 -
可观测性-Metrics-Spring Websocket监控
介绍:DistributionSummary用于计算一组值的分布统计信息,如平均值、最大值、最小值和百分位数等。适用场景:适用于度量一组值的分布情况,如请求响应时间、响应大小等。测量响应大小分布示例// 记录响应大小 summary . record(2048);// 记录响应大小 summary . record(512);// 记录响应大小 // 获取统计结果 long count = summary . count();原创 2023-06-29 13:49:30 · 1789 阅读 · 0 评论 -
可观测性-可视化-Grafana中table列的gradient guage填充度问题
这样,Gauge将根据指定范围内的值显示填充程度,而不是根据数据集中的最小值和最大值。如果您观察到某些图形单元格填充得很满,而其他图形单元格填充得很少,原因可能是这些图形的数据点在整个数据集的值范围内有很大差异。这可能是数据本身的特点,也可能是查询设置的结果。:在table类型的图表中,设置了某列的cell mode为Gradient Gauge时,单元格的填充程度如何设置。在Grafana中,当使用Gradient Gauge作为单元格显示模式时,单元格内的填充程度。原创 2023-03-22 09:42:50 · 749 阅读 · 0 评论 -
可观测性-可视化-Grafana的表格(table)类型图表中,在列上要显示“多少天前”
首先measurement中要有业务时间列,例如startTime或者updateTime(时间戳类型)。:在Grafana的表格(table)类型图表中,在列上要显示“多少天前”2.在“列样式”中,找到时间列(通常是时间戳列),点击它以展开设置。)”输入框中,输入日期格式。这将把时间戳转换为类似于“2天前”这样的格式。5.点击“应用”以保存更改并查看更新后的图表。1.在面板编辑视图中,转到“列样式”选项卡。3.从“类型”下拉菜单中选择“日期”。然后在查询中查出时间列。原创 2023-03-20 17:23:32 · 1388 阅读 · 0 评论 -
可观测性-可视化-Grafana中设置时间序列图为双Y轴
中勾选stack,可以在Series overrides中去单独一个个设置。注意不要跨2个Y轴,否则会出问题。在Grafana中,当同时使用双Y轴时,有时会出现轴不正确的情况.单位不正常的情况,可以设置轴的最小值和最大值、刻度间隔等。:在Grafana中设置时间序列图为双Y轴。,每个查询返回您想要在双Y轴上显示的数据。中给2个查询中的每个。原创 2023-03-20 21:15:54 · 2294 阅读 · 0 评论 -
InfluxDB数据建模和最佳实践
如果提交具有相同measurement,tag set和timestamp,但具有不同field set的行协议,则field set将变为旧field set与新field set的合并,并且如果有任何冲突以新field set为准。如果您的数据结构是相同的,那么使用一个measurement加上不同的tag存储比较优化,但如果您的数据字段和数据类型不同,那么使用10万个measurement存储可能更加合理。1.一个数据库可以有多个 RP,每个数据库的 RP 都是唯一的,建立2个保留策略,7d和1y。原创 2023-03-02 21:04:07 · 1365 阅读 · 0 评论 -
InfluxDB + Grafana计算成功率
从计算中添加字段从计算中添加字段,使用其他两个字段计算的新字段,每个转换可以添加一个新的字段modeReduce row-对选定字段的每一行独立应用选定的计算。-对来自两个选定字段的单行中的值应用基本数学运算(求和、乘法等)。Field name-如果选择 Reduce row,选择要在新字段计算中使用的字段名称。-如果您选择Reduce row模式,则会出现calculation字段。原创 2023-01-16 13:30:56 · 958 阅读 · 0 评论 -
InfluxDB连续查询(通过下采样聚合原始数据降低数据样本数)和数据保留策略(过期删除)
连续查询(CQ) 是一种在数据库中自动且定期运行的 InfluxQL 查询。CQ 要求SELECT子句中有一个函数并且必须包含一个子句。保留策略(RP) 是 InfluxDB 数据结构的一部分,描述了 InfluxDB 保留数据的时间。InfluxDB 将您本地服务器的时间戳与您数据上的时间戳进行比较,并删除比 RP 更早的数据DURATION。一个数据库可以有多个 RP,每个数据库的 RP 都是唯一的。假设从长远来看,我们只对每隔 30 分钟通过电话和通过网站的平均订单数感兴趣。原创 2022-12-14 16:24:38 · 1640 阅读 · 1 评论 -
可观测性-Metrics-当大量并发数据插入时,Influxdb丢失很多数据
的内部机制是基于时间的时序性数据库,每一条记录都会有一个时间标识,如果客户端记录没给这个时间,influxdb会提供。相同的 measurement,tagset 和 timestamp 的数据会覆盖。组成,是不可以重复的,如果重复,后面的将覆盖前面的。原创 2022-12-08 15:58:20 · 1342 阅读 · 0 评论 -
可观测性-Metrics-Tomcat连接数、线程数理解以及压测记录
为了搞懂Tomat的连接+线程模型,搞清楚每个配置参数的作用,实际压测看一下是否与预期一致。Tomcat配置如下:测试接口伪代码:原理Tomcat的NioEndpoint实现了I/O多路复用模型。Java的多路复用器的使用:NioEndpoint包含LimitLatch、Acceptor、Poller、SocketProcessor和Executor共5个组件。线程模型Tomcat源码如下:maxConnections:最大连接数这个参数是指tomcat能够接受的最大连接数。当Tomcat接收的原创 2022-12-06 10:28:17 · 900 阅读 · 0 评论 -
可观测性-Event-埋点数据模型
当上线初期整体数据量不大的时候,我们可以统统以事件(event)来埋点。原创 2022-11-22 11:25:29 · 373 阅读 · 0 评论 -
可观测性-Event-指标事件采样策略总结
在默认情况下,系统会采集所有追踪(Tracing)的数据。但是如果系统比较复杂,采集的端点比较多的时候,对存储压力比较大,这个时候我们可以搞个采样策略配置,只存储部分的调用链路信息。比如:50%。设置采样率的时候并不会影响相关指标的计算(metrics还是全量聚合的,例如步长3s,不管3s内有多少事件都是只有一条数据)。相关指标的计算还是使用完整的数据计算的。采样前,每天携带几十亿干货。采样后,不行了萎靡不振。原创 2022-11-17 21:10:05 · 410 阅读 · 0 评论 -
可观测性-可视化-Grafana热图Heatmap
Heatmap使用热图,将允许您查看随时间变化的直方图。所以要使用热图的前提必先知道如何使用直方图。什么是直方图?直方图是用于表示数值分布的图形,直方图将数值分组到一个一个的bucket当中,然后计算每个bucket中值出现次数。在直方图上,X轴表示表示数值的范围,Y轴表示对应数值出现的频次。在直方图上,对于各数值出现的次数,分布是否对称都显示的很清楚。我们可以很容易地看到大多数值落在240-300之间,峰值在260-280之间。直方图只是查看特定时间范围内的值分布。那什么又是Heatmap呢?原创 2022-11-16 16:28:23 · 1370 阅读 · 0 评论 -
可观测性-Metrics-统计每个指标的基数
之前已经监控了很多metrics,现在我们需要监控metrics自身的一些指标,例如我们比较关注的是其每个指标的基数。基数太大会导致客户端和服务端内存溢出问题。为此我们针对Meter解释下。为唯一key,例如有2个指标。原创 2022-11-15 10:20:30 · 413 阅读 · 0 评论 -
可观测性-Metrics-网络监控
来着这个没有merge上去的PR:https://github.com/micrometer-metrics/micrometer/pull/1303/原创 2022-10-29 22:04:57 · 387 阅读 · 0 评论 -
可观测性-Metrics-慢SQL监控
利用Mybatis拦截器实现原创 2022-10-26 20:15:21 · 482 阅读 · 0 评论 -
Spring Boot Actuator + InfluxDB + Grafana 指标监控入门篇
文章目录InfluxDB简介安装配置文件启动常用命令用户管理保存策略数据库、表数据连续查询(Continuous Queries)常用函数常用查询可视化工具参考Spring Boot Actuator集成增加依赖增加配置文件启动验证查看Influx命令行查看可视化查看MicrometerGrafana安装启动Grafana使用配置数据源创建大屏Dashboard市场Spring Boot micrometer大屏配置告警本篇只搞默认的指标,业务指标后面再开一篇。所有需要下载的都可以去官网或者我的CSD原创 2022-05-28 23:29:56 · 1011 阅读 · 0 评论 -
可观测性-Metrics-存储-InfluxDb连续查询(CQ)Continuous Queries
:需要一个函数、一个INTO子句和一个GROUP BY time()子句.注意:中不需要时间范围。InfluxDB 自动生成执行 CQ 的时间范围。系统将忽略子句中任何用户指定的时间范围。以间隔相同的间隔执行,并且它们在 InfluxDB 数据库预设时间边界的开始处运行。如果间隔为一小时,则 CQ 在每小时开始时执行。当 CQ 执行时,它会运行单个查询以获取介于和减去 间隔之间的时间范围。如果时间间隔为一小时,当前时间为 17:00,则查询的时间范围为 16:00 到 16:59.999999999原创 2022-10-23 17:42:24 · 563 阅读 · 0 评论 -
可观测性-Metrics-日志Log指标
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控。原创 2022-10-23 16:40:33 · 687 阅读 · 0 评论 -
可观测性-Metrics-磁盘目录指标
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控。原创 2022-10-21 16:27:17 · 215 阅读 · 0 评论 -
可观测性-Metrics-进程运行时间指标
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控。原创 2022-10-21 16:20:02 · 312 阅读 · 0 评论 -
可观测性-Metrics-文件描述符(fd)指标
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控。原创 2022-10-21 14:04:37 · 315 阅读 · 0 评论 -
可观测性-Metrics-系统CPU、进程CPU指标
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控。原创 2022-10-21 13:40:52 · 740 阅读 · 0 评论 -
可观测性-Event-JVM线程死锁事件检测
包下的.这个包是JDK提供的一些用于检测JVM状态的API类.可以拿到当前JVM的内存,GC,线程,class等各种信息.可以定时检测死锁线程然后发出告警事件。原创 2022-10-19 14:36:45 · 232 阅读 · 0 评论 -
可观测性-Event-长事务监控
我们可以去事务管理器监控数据库连接的获取和返回即可。可能是慢SQL或者长事务导致连接被占用问题。即连接被业务占用时间(3.017s)。使用的是Spring 的事务管理器。,其中有个指标可以监控事务的耗时。前文我们讲了数据库连接池的监控。连接从池中取出到返回的时间,,默认使用的是实现类。原创 2022-10-18 10:48:44 · 596 阅读 · 0 评论 -
可观测性-Metrics-Hystrix监控
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控可观测性-业务监控可观测性-Metrics-Kafka监控文档地址Hystrix 不再处于积极开发阶段,目前处于维护模式。Hystrix(版本 1.5.18)足够稳定,可以满足 Netflix 对我们现有应用程序的需求。原创 2022-10-17 16:04:59 · 307 阅读 · 0 评论 -
可观测性-可视化-Grafana 数据下钻
表格不能点击排序,否则值传递过来是错误的。原创 2022-10-16 21:48:13 · 1519 阅读 · 1 评论 -
可观测性-告警-JVM GC重要指标+告警指标
如果一个线程在临界区时需要GC,那么它将允许它们完成,即调用相应的释放函数。如果一个线程在临界区时需要GC,那么它将允许它们完成,即调用相应的释放函数。对于 G1,这可能是一个主要的 GC,并且在例行的次要收集中看到。,而不考虑实际的分配大小,但是如果由于这个检查而触发,原因将被列为巨大的分配。jvm.gc.max.data.size : 老年代内存池最大size(即设置的老年代大小,单位字节)。jvm.gc.concurrent.phase.time:在 CMS 的并发阶段花费的时间。原创 2022-10-14 13:52:51 · 2822 阅读 · 0 评论 -
可观测性-Metrics-存储-InfluxDb
InfluxDB 是一个,旨在处理高写入和查询负载。(Telegraf、InfluxDB、Chronograf、Kapacitor)的一个组成部分。InfluxDB 旨在用作任何涉及大量时间戳数据的用例的后备存储,包括 DevOps 监控、应用程序指标、物联网传感器数据和实时分析。原创 2022-10-13 21:22:01 · 1077 阅读 · 0 评论 -
可观测性-Metrics-Kafka监控
使用Yammer Metrics来上报broker端的Metrics。Java客户端使用Kafka Metrics上报,这是一个内置的Metrics注册表,它最小化了客户端应用程序的依赖关系。两者都可以通过JMX方式获取,并且是可插拨的连接到你的监控系统。以下是公共指标生产者和消费者一样。原创 2022-10-12 17:32:33 · 2017 阅读 · 0 评论 -
可观测性-业务监控
注意:要全局唯一,否则会出现多桶统计问题,导致内存炸裂和不准确问题。相同,相同tagkey,相同类型的Meter,在同一个中,meter是同一个,其Id一样,会一起统计聚合。// 全局要唯一 否则jvm会出现多个registry 多个相同id 的meter MeterRegistry meterRegistry = new LoggingMeterRegistry(new LoggingRegistryConfig() {原创 2022-10-12 13:44:25 · 274 阅读 · 0 评论 -
可观测性-Metrics-JVM监控
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控可观测性-Metrics-接口监控(Mvc监控)可观测性-Metrics-Tomcat监控。原创 2022-10-09 14:29:35 · 1435 阅读 · 0 评论 -
可观测性-Metrics-Tomcat监控
【代码】可观测性-Metrics-Tomcat监控。原创 2022-10-07 22:13:13 · 746 阅读 · 0 评论 -
可观测性-Metrics-接口监控(Mvc监控)
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控可观测性-Metrics-缓存监控老规矩哈,我们先从Micrometer、Spring Boot Actuator、Dropwizard等包中,找找看是否存在相关实现。micrometerdropwizard看下面的2个包下代码即可。原创 2022-10-06 22:19:22 · 1504 阅读 · 0 评论 -
可观测性-Metrics-缓存(redis)监控
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控可观测性-Metrics-Httpclient连接池监控老规矩哈,我们先从Micrometer、Spring Boot Actuator、Dropwizard等包中,找找看是否存在相关实现。micrometerdropwizard看下面的2个包下代码即可由于Spring Boot与 micrometer高度集成,所以优先选择Spring Boot Actuator和Micrometer中的实现。原创 2022-10-05 22:43:17 · 1914 阅读 · 0 评论 -
可观测性-Metrics-Httpclient连接池监控
可观测性-Metrics-线程池监控可观测性-Metrics-数据库连接池HikariCP监控老规矩哈,我们先从Micrometer、Spring Boot Actuator、Dropwizard等包中,找找看是否存在相关实现。原创 2022-10-04 23:28:50 · 3174 阅读 · 0 评论 -
可观测性-Metrics-数据库连接池HikariCP监控
方法,让我们可以注入MetricRegistry来实现对连接池指标的收集。这样我们可以较为方便的监控连接池的运行状态。慢日志可以考虑通过事件类型,发送事件用于告警,关联更多的上下文,在ORM层去做,例如在Mybatis的拦截器做。作者是不愿意在连接池层去做这种监控的事情的,应为会大大降低其性能。Sql记录功能会导致性能下降,所以建议仅能用于开发、测试环境。只需要添加如下依赖,内部会自动加上。还是添加上面的依赖组件。依赖,并自动配置注册器。原理,我们可以看这个类。原创 2022-10-03 20:11:44 · 10662 阅读 · 0 评论 -
可观测性-Metrics-线程池监控
中的自带的一些指标,所以想要获取其内部任务的执行时间,那就需要走代理任务了,还好扒代码的时候发现已经给我们写好了哈。由上可知,我们仅需要把我们的线程池定义为Bean即可。如何不满足我们的需要我们可以任意自定义,不走它这套也行。我们也可以安装上面的套路,把线程池全部定义为Bean就好了。: 里面有个定时线程池,间隔为步长时间,定时调用子类的。Bean,进行指标埋点,埋点为不带执行耗时的方式。方法为:获取所有的meters并输入到日志中。获取所有的meters)输出到日志中。的集成,可以看这个Issue。原创 2022-10-02 23:25:10 · 2668 阅读 · 1 评论