使用prometheus监控java服务

在prometheus官方下载页面没有看到jvm_exproter的下载地址但是官方页面是有推荐下载地址的  访问    Prometheus - Monitoring system & time series database   prometheus官方网址

官方推荐地址下载是在github网络访问不方便的可以用下面的网址

 wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.19.0/jmx_prometheus_javaagent-0.19.0.jar

国内JMX_exporter下载地址

 Central Repository: io/prometheus/jmx/jmx_prometheus_javaagent

根据需求选择版本这里我使用的是19.0版本

 wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.19.0/jmx_prometheus_javaagent-0.19.0.jar

页面的提示中可以看到启动jmx exporter的时候需要有一个config.yaml的文件,config.yaml配置文件的示例在example_configs目录中

mkdir /data/jmx_exporter   创建存储目录

cd /data/jmx_exporter/

wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.19.0/jmx_prometheus_javaagent-0.19.0.jar

创建配置文件

vim config.yaml

rules:

- pattern: ".*"

Jmx_exporter启动命令

java -javaagent:jmx_prometheus_javaagent-0.19.0.jar=12345:config.yaml -jar OKMInstaller.jar   

这个OKMInstaller.jar是我从网上随便下载了一个javaweb包运行起来测试监控的

Download | OpenKM   测试运行的可以自行下载

启动运行到这一步可以不用管了,到这就可以监控到数据了。

启动命令格式

java -javaagent: + jmx-exporter.jar的路径=启动端口 : config.yamll文件路径 + -jar + xxx.jar(被监控的项目jar包路径)

启动成功后可以来的浏览器访问192.168.197.137:12345/metrics 查看采集的数据

启动以后来的prometheus来配置

  - job_name: "jvm"

    static_configs:

      - targets: ["192.168.197.137:12345"]

重启prometheus

systemctl restart prometheus

重启完成后来到grafana导入模板我这里推荐模板id10519 有些模块没有数据是因为表达式不匹配,有些我修改过后贴在下面了,还有几个没写可以吧模块删掉就行。

cpu load 模块表达式需要换成

sum(rate(java_lang_OperatingSystem_SystemCpuLoad[5m])) * 100

System load average  模块表达式需要换成

java_lang_OperatingSystem_SystemLoadAverage{job="$job", instance="$instance"}

Available CPUs  模块表达式需要换成

java_lang_OperatingSystem_AvailableProcessors{instance="$instance"}

Open file descriptors  模块表达式换成

process_open_fds{instance="$instance"}

Class loading 模块表达式换成

jvm_classes_loaded_total{job="$job", instance="$instance"}

下面是grafana模块标签的含义

Memory area [heap]:堆内存区域,用于存储对象实例。

Memory area [noheap]:非堆内存区域,用于存储其他数据结构和元数据。

Memory pool [Code Cache]:代码缓存池,存储编译后的机器代码。

Memory pool [Compressed Class Space]:压缩类空间池,存储压缩的类和元数据。

Memory pool [Metaspace]:元空间池,存储类元数据。

Memory pool [PS Eden Space]:新生代(Eden)内存池,用于存放新创建的对象。

Memory pool [PS Old Gen]:老年代内存池,用于存放长时间存活的对象。

Memory pool [PS Survivor Space]:幸存者空间内存池,用于存放幸存的新生代对象。

GC count increase:垃圾回收次数的增量。

GC time:垃圾回收所消耗的时间。

Threads used:使用的线程数量。

Class loading:类加载情况的指标,包括已加载的类数量、加载失败的类数量等。

Physical memory:物理内存的使用情况。

下面是关于gc总时长告警模板

#gc总时长告警规则

groups:

  - name: jvm_gc_time

    rules:

      - alert: GC总时长

        expr: jvm_gc_collection_seconds_sum > 1.0

        for: 30s

        labels:

          severity: warning

        annotations:

          summary: "{{ $labels.instance }} 当前服务gc总时长超过10秒 "

        resolved: "{{ $labels.instance }} 当前主机服务gc时长恢复正常"

#gc总次数告警规则

    rules:

      - alert: GC总次数

        expr: jvm_gc_collection_seconds_count{gc="PS Scavenge",} > 200

        for: 30s

        labels:

          severity: warning

        annotations:

          description: "{{ $labels.instance }} 当前服务gc总次数超过200次 "

        resolved: "{{ $labels.instance }} 当前主机服务gc总次数恢复正常"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/145539.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud Gateway--Predicate/断言(详细介绍)中

😀前言 本篇博文是关于SpringCloud Gateway–Predicate/断言(详细介绍)中,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以…

51单片机数字电压表仿真设计_LCD显示(仿真+程序+原理图+PCB+设计报告+讲解)

51单片机数字电压表仿真设计_LCD显示(仿真程序原理图PCB设计报告讲解) 原理图:Altium Designer 仿真版本:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0006 51单片机数…

【新版】系统架构设计师 - 未来信息综合技术

个人总结,仅供参考,欢迎加好友一起讨论 文章目录 架构 - 未来信息综合技术考点摘要信息物理系统CPS的体系架构CPS 的技术体系CPS应用场景 人工智能分类关键技术机器学习 机器人发展分类机器人4.0 边缘计算概念与特点边云协同安全应用场景 数字孪生关键技…

1 论文笔记:Efficient Trajectory Similarity Computation with ContrastiveLearning

2022CIKM 1 intro 1.1 背景 轨迹相似度计算是轨迹分析任务(相似子轨迹搜索、轨迹预测和轨迹聚类)最基础的组件之一现有的关于轨迹相似度计算的研究主要可以分为两大类: 传统方法 DTW、EDR、EDwP等二次计算复杂度O(n^2)缺乏稳健性 会受到非…

紫光同创FPGA图像视频采集系统,基于OV7725实现,提供工程源码和技术支持

目录 1、前言免责声明 2、设计思路框架视频源选择OV7725摄像头配置及采集动态彩条HDMA图像缓存输入输出视频HDMA缓冲FIFOHDMA控制模块HDMI输出 3、PDS工程详解4、上板调试验证并演示准备工作静态演示动态演示 5、福利:工程源码获取 紫光同创FPGA图像视频采集系统&am…

Linux 网络编程

套接字(Socket): 通过网络实现跨机通信 作用:一种文件描述符传输层的文件描述符 整个编程中,需要着重注意htonl/htons、ntohl/ntohs、inet_addr等 TCP的C/S实现 循环服务器模型 TCP服务器实现过程 1.创建套接字&a…

Docker安装MS SQL Server并使用Navicat远程连接

思维导航 MS SQL Server简介 Microsoft SQL Server(简称SQL Server)是由微软公司开发的关系数据库管理系统,它是一个功能强大、性能卓越的企业级数据库平台,用于存储和处理大型数据集、支持高效查询和分析等操作。SQL Server 支持广泛的应用程序开发接口(API),包括 T-S…

大规模语言模型--中文 LLaMA和Alpaca

中文LLaMA 尽管 LLaMA 和 Alpaca 在 NLP 领域取得了重大进展, 它们在处理中文语言任务时, 仍存在一些局限性。这 些原始模型在字典中仅包含数百个中文 tokens (可以理解为单词),导致编码和解码中文文本的效率受到了很大 影响。 之前已经对…

.net 温故知新:Asp.Net Core WebAPI 入门使用及介绍

在Asp.Net Core 上面由于现在前后端分离已经是趋势,所以asp.net core MVC用的没有那么多,主要以WebApi作为学习目标。 一、创建一个WebApi项目 我使用的是VS2022, .Net 7版本。 在创建界面有几项配置: 配置Https启用Docker使用控制器启用OpenAPI支持不使用顶级语句其中配置…

毛玻璃态卡片悬停效果

效果展示 页面结构组成 页面的组成部分主要是卡片。其中卡片的组成部分主要是包括了图片和详情。 卡片的动效是鼠标悬停在卡片上时,图片会移动到左侧,并且图片是毛玻璃效果。所以我们在布局的时候图片会采用绝对布局。而详情则是基础布局。 CSS3 知识…

springboot和vue:八、vue快速入门

vue快速入门 新建一个html文件 导入 vue.js 的 script 脚本文件 <script src"https://unpkg.com/vuenext"></script>在页面中声明一个将要被 vue 所控制的 DOM 区域&#xff0c;既MVVM中的View <div id"app">{{ message }} </div…

HBase高阶(一)基础架构及存储原理

一、HBase介绍 简介 HBase是Hadoop生态系统中的一个分布式、面向列的开源数据库&#xff0c;具有高可伸缩性、高性能和强大的数据处理能力。广泛应用于处理大规模数据集。 HBase是一种稀疏的、分布式、持久的多维排序map 稀疏&#xff1a;对比关系型数据库和非关系型数据库&a…

记录一次阿里云服务器ECS上启动的portainer无法访问的问题

如下图&#xff0c;在阿里云ECS服务器上安装并启动了portainer&#xff0c;但是在自己电脑上访问不了远程的portainer。 最后发现是要在网络安全组里开放9000端口号&#xff0c;具体操作如下&#xff1a; 在云服务器管理控制台点击左侧菜单中的网络与安全-安全组&#xff0c;然…

二值贝叶斯滤波计算4d毫米波聚类目标动静属性

机器人学中有些问题是二值问题&#xff0c;对于这种二值问题的概率评估问题可以用二值贝叶斯滤波器binary Bayes filter来解决的。比如机器人前方有一个门&#xff0c;机器人想判断这个门是开是关。这个二值状态是固定的&#xff0c;并不会随着测量数据变量的改变而改变。就像门…

FPGA的数字钟带校时闹钟报时功能VHDL

名称&#xff1a;基于FPGA的数字钟具有校时闹钟报时功能 软件&#xff1a;Quartus 语言&#xff1a;VHDL 要求&#xff1a; 1、计时功能:这是数字钟设计的基本功能&#xff0c;每秒钟更新一次,并且能在显示屏上显示当前的时间。 2、闹钟功能:如果当前的时间与闹钟设置的时…

数据结构—快速排序(续)

引言&#xff1a;在上一篇中我们详细介绍了快速排序和改进&#xff0c;并给出了其中的一种实现方式-挖坑法 但其实快速排序有多种实现方式&#xff0c;这篇文章再来介绍其中的另外两种-左右指针法和前后指针法。有了上一篇挖坑法的启示&#xff0c;下面的两种实现会容易许多。 …

蓝桥等考Python组别九级005

第一部分&#xff1a;选择题 1、Python L9 &#xff08;15分&#xff09; 运行下面程序&#xff0c;可以输出几行“*”&#xff1f;&#xff08; &#xff09; for i in range(0, 2): for j in range(0, 5): print(*, end ) print() 5234 正确答案&#xff1a;B 2、P…

5自由度雄克机械臂仿真描点

5自由度雄克机械臂仿真描点 任务 建立雄克机械臂的坐标系和D-H参数表&#xff0c;使用Matlab机器人工具箱&#xff08;Robotics Toolbox&#xff09;&#xff0c;用机械臂末端执行器触碰8个红色的目标点。 代码 %% 机器人学 format compact close all clear clc%% DH参数 L…

新型信息基础设施IP追溯:保护隐私与网络安全的平衡

随着信息技术的飞速发展&#xff0c;新型信息基础设施在全球范围内日益普及&#xff0c;互联网已经成为我们社会和经济生活中不可或缺的一部分。然而&#xff0c;随着网络使用的增加&#xff0c;隐私和网络安全问题也引发了广泛关注。在这个背景下&#xff0c;IP&#xff08;In…

Java实现word excel ppt模板渲染与导出及预览 LibreOffice jodconverter

Java Office 一、文档格式转换 文档格式转换是office操作中经常需要进行一个操作&#xff0c;例如将docx文档转换成pdf格式。 java在这方面有许多的操作方式&#xff0c;大致可以分为内部调用&#xff08;无需要安装额外软件&#xff09;&#xff0c;外部调用&#xff08;需…