事务监控—一站式建立jmeter+telegraf+influxdb+Grafana看板

社会 2025-05-30 05:49:52 8218

一、前语。

当时所测验事务需求为集成在事务系统WMS的jar包,jar包测验首要会集在本地拉取开发编写的代码做单元测验,由于jar包没有独自的运用,每逢大促压测或日常压测,架构师或开发搭档问道:这个jar包的JVM目标怎么?jar包的火焰图是什么样的?对此,只能无可奈何。依据以上布景,对jar监控做了一些调研和实战。

。

二、调研进程。

1.forcebot渠道。

forcebot渠道是泰山上一款支撑Groovy脚本编写的压测渠道,经过将jar包上传,编写脚本,便可看到当时压测的呼应时刻、TP99等监控信息。forcebot渠道也支撑抓取火焰图信息,抓取到的火焰图效果如下,可是此信息为。Groovy脚本进程火焰图信息。而并非Groovy脚本调用jar的火焰图信息。

2.jconsole/jvisualvm+Grafana监控。

jconsole。

jconsole是JDK主动的、依据jmx协议的、对JVM进行可视化监督和办理的东西。jconsole支撑联接。本地进程。和。长途进程。,假如需求联接长途进程,那么长途进程有必要敞开jmx协议。

jvisualvm。

jvisualvm也是JVM自带的一个类似于jconsole的可视化监控东西,jvisualvm也支撑。本地进程。和。长途进程。

长途监控的其他监控信息能够在易维渠道检查到Grafana监控状况,可是关于相同目标比方。CPU。运用率信息的记载,jvisualvm和Grafana对目标的描绘效果有误差,开始剖析是。两个监控看板关于目标数据的搜集及计算有误差。

经过以上监控信息咱们能够清晰的看到当时jar包的JVM、CPU以及相应办法的耗时状况。可是现有易维渠道供给的Grafana看板目标数据有限,无法具体看到TP99、TPS等数据,且经过visuals拿到的数据和Grafana拿到的数据关于相同目标来说数据值有差异,建立一套一致的看板势在必行。经调研易维渠道没有用influxdb来存储数据,用的是ES,易维grafana中展现的数据是在ES中出的,ES中就没有JVM相关的监控信息,遂探求了怎么自建功用测验东西进行监控看板的建立。

三、功用测验渠道建立。

1.jme。te。r。

常用的压力测验软件有:Lo。ad。Runner、ApacheJMeter、NeoLoad、WebLOAD、Loadster、Load impact、CloudTest、Loadstorm、阿里云PTS等等,jmeter是一款运用。Java。开发的,开源免费的测验东西, 首要用来做功用测验和功用测验(压力测验/负载测验),且简略易用,本文便运用了jmeter压测东西。

。

jmeter能够对http恳求做压测,可是做jar包的压测,需求对jmeter做二次开发进行定制化编写,关于以上jemter的二次开发之前已有文章宣布对此不做过多赘述,详见 jmeter二次开发发送java恳求。

。

咱们能够经过运用插件等方法设置线程数、循环次数等信息定制化监控咱们咱们压测的需求监控的目标数据。

2.telegraf。

1.1.Telegraf是什么。

Telegraf是一个Go言语编写的署理程序,可搜集系统和服务的计算数据,并写入到InfluDB数据库。内存占用小,经过插件系统可轻松增加支撑其他服务的扩展。是一个轻量级数据搜集系统。

。

Telegraf metric是用于在处理期间对数据建模的内部表明。这些目标彻底依据InfluxDB的数据模型,包括四个首要组件:

•衡量称号(Measurement)。

•。标签。(tags)。

•字段(Field)。

•时刻戳(。ti。me)。

1.2.为什么要用Telegraf。

•能够搜集多种组件的运转信息,不需求自己手动写守时脚本,降低了数据获取的难度。

◦CPU。

◦内存。

◦不需求自己手动写守时脚本,降低了数据获取的难度。

•装备简略。

•与InfluxDB完美结合,依照。时刻序列。搜集数据。

•轻量级,占用内存小。

3.influxdb。

3.1.InfluxDB简介。

是一个由InfluxData开发的开源时序型数据库。它由Go言语写成,着力于高功用地查询与存储时序数据。InfluxDB被广泛运用于存储系统的监控数据,IoT。职业的实时数据等场景。

Influxdb有如下三大特性。

•依据时刻序列。

•可衡量性。

•依据事情。

相应的,咱们也能够运用。prometheus。数据库搜集数据,Prometheus也是由go言语开发的,是一套开源的监控&报警&时刻序列数据库的组合。

3.2.InfluxDB运用。

InfluxDB数据模型包括Measurement(表)、Tags(维度列)组件、Field(数值列)以及point。

InfluxDB数据保存战略操作。

创立数据库保存战略。

•:保存战略的称号。

•:为哪个数据库创立保存战略。

•:该保存战略对应的数据过期时刻。

•REPLICATION:副本因子:几个副本。

•SHARD DURATION:分片组的默许时长。

•[DEFAULT]:是否为默许战略。

CREATE RETENTION POLICY  "influx_retention" ON "telegraf" DURATION 30d REPLICATION 1 DEFAULT;

检查数据库保存战略。

SHOW RETENTION POLICIES ON telegraf;

运用telegraf+InfluxDB建立的数据资源办理看板。

4.Grafana。

4.1.Grafana是什么?

Grafana是开源的、炫酷的可视化监控、剖析东西,它首要包括以下特色:

•多种展现方法。

•支撑多数据源:

◦Graphite:时刻序列 图形系统。

◦InfluxDB。

◦Opentsdb:依据HBase。

◦Prometheus:开源 服务监控系统和时序数据库。

◦ElasticSearch,elk:

•多种告诉提示。

◦Em。ai。l、SMS、。

•混合展现。

◦同一个图表中,混合运用不同的数据源。

4.2.为什么要用Grafana?

Grafana干流数据库:ElasticSearch、InfluxDB、MySQL、Opentsdb、Postgresql。涵盖了大部分数据库,并且有很炫酷的图表库,开源、能够进行二次开发、汉化、能够做前端开发。

建立的Grafana看板如下。

。

四、特别提示。

1.jmeter与telegraf的联接需求运用Jolokia东西,此东西的作用为作为JMX的HTTP。桥接器。,使得Telegraf能够经过HTTP协议轻松地拜访JMX办理的Java运用程序的数据。关于Jolokia的官网及简介链接如下:

jolokia具体文档: jolokia官网。

2. 目标的搜集及监控数据对齐能够参阅M。DC。监控 监控目标简介。

3. 火焰图数据的搜集能够运用arthas东西,装置进程可参阅神灯文章 JVM虚拟机之字节码文件详解。

五、总结与展望。

千里之行,始于足下,本次从0到1建立监控功用目标看板的进程中得到了深入的表现。从开始的想象、规划,到一步步施行、调试,再到终究的出现与优化,每一步都凝聚了建立者的汗水与才智。在这个进程中,不只成功建立了一个功用完善的监控功用目标看板,更重要的是,学会了怎么在压测进程中,依据目标状况提出合理的优化主张,为开发团队供给了有力的数据支撑,协助他们更好地优化代码,提高系统功用。这一效果不只是对自我技能才能的必定,更是对团队协作精力的最好诠释。

一起,这次阅历也让我深入感触到了自我技能生长的巨大腾跃。在解决问题的进程中,我不断应战自我,学习新知识,把握新技能,逐步形成了自己的技能系统和办法论。这些名贵的经历和收成,将成为我未来职业生涯中不可或缺的财富。

最终,特别感谢在建立看板进程中给予我忘我协助和支撑的同学们!

审阅修改 黄宇。

内容来源:https://sh.tanphatexpress.com.vn/app-1/kq vietlott,https://chatbotjud-hml.saude.mg.gov.br/app-1/naruto-xvideos

本文地址:http://w.21nx.com/new/36633661-4c199994.html
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

全站热门

经典重聚,谋定三国!唐国强、孙彦军三十年后再续“隆中对”传奇

博主称小米轿车现在不适合入局行政车 有网友对立 -

孕育出GTA的苏格兰游戏职业,或将在2025年迎来迸发

据悉 新款入门级iPad装备6GB RAM 功能提高显着

电影、品牌齐聚戛纳电影节,背面见证了怎样的中国式蜕变?

画质大提高!维塔士新作《唐传奇:琵琶行》新演示放出

全国政协委员徐鹏飞:统筹核工业数字化转型 加强人工智能专项支撑

Manus AI合伙人弄清:未开设任何付费获取约请码的途径 从未投入任何市场推广预算

友情链接