高性能、无侵入的 Java 性能监控神器—MyPerf4J

MyPerf4J 为每个应用收集数十个监控指标,所有的监控指标都是实时采集和展现的。

下面是 MyPerf4J 目前支持的监控指标列表:

Method

RPS,Count,Avg,Min,Max,StdDev,TP50, TP90, TP95, TP99, TP999, TP9999, TP99999, TP100

高性能、无侵入的 Java 性能监控神器---MyPerf4J
Memory

HeapInit,HeapUsed,HeapCommitted,HeapMax,NonHeapInit,NonHeapUsed,NonHeapCommitted,NonHeapMax

高性能、无侵入的 Java 性能监控神器---MyPerf4J
JVM GC

CollectCount,CollectTime

高性能、无侵入的 Java 性能监控神器---MyPerf4J
JVM Class

Total,Loaded,Unloaded

高性能、无侵入的 Java 性能监控神器---MyPerf4J

快速启动

MyPerf4J 采用 JavaAgent 配置方式,透明化接入应用,对应用代码完全没有侵入。

下载
  • 下载并解压 MyPerf4J-ASM.zip
  • 阅读解压出的 README 文件
  • 修改解压出的 MyPerf4J.properties 配置文件中 app_namemetrics.log.xxx 和 filter.packages.include 的配置值
  • MyPerf4J-ASM.zip包:https://github.com/LinShunKang/Objects/blob/master/zips/CN/MyPerf4J-ASM-3.3.0-SNAPSHOT.zip?raw=true
配置

在 JVM 启动参数里加上以下两个参数-javaagent:/path/to/MyPerf4J-ASM.jar
-DMyPerf4JPropFile=/path/to/MyPerf4J.properties

高性能、无侵入的 Java 性能监控神器---MyPerf4J
运行

启动应用,监控日志输出到 /path/to/log/method_metrics.log:

MyPerf4J Method Metrics [2020-01-01 12:49:57, 2020-01-01 12:49:58]
Method[6]                            Type        Level  TimePercent      RPS  Avg(ms)  Min(ms)  Max(ms)    StdDev    Count     TP50     TP90     TP95     TP99    TP999   TP9999
DemoServiceImpl.getId2(long)      General      Service      322.50%     6524     0.49        0        1     0.50      6524        0        1        1        1        1        1
DemoServiceImpl.getId3(long)      General      Service      296.10%     4350     0.68        0        1     0.47      4350        1        1        1        1        1        1
DemoServiceImpl.getId4(long)      General      Service      164.60%     2176     0.76        0        1     0.43      2176        1        1        1        1        1        1
DemoServiceImpl.getId1(long)      General      Service        0.00%     8704     0.00        0        0     0.00      8704        0        0        0        0        0        0
DemoDAO.getId1(long)         DynamicProxy          DAO        0.00%     2176     0.00        0        0     0.00      2176        0        0        0        0        0        0
DemoDAO.getId2()             DynamicProxy          DAO        0.00%     2176     0.00        0        0     0.00      2176        0        0        0        0        0        0
卸载

在 JVM 启动参数中去掉以下两个参数,重启即可卸载此工具。

-javaagent:/path/to/MyPerf4J-ASM.jar
-DMyPerf4JPropFile=/path/to/MyPerf4J.properties

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9637

(0)
郭靖的头像郭靖
上一篇 2023年9月12日 下午5:05
下一篇 2023年9月13日 下午4:50

相关推荐

  • linux下如何mount挂载lvm磁盘

    磁盘如果是普通的分区,比如:ntfs、ext3等,可以直接用 mount -t <type>来制定文件系统类型来挂载,但有时候磁盘是采用的lvm卷的分区,要挂载这类磁盘,就应该按照以下方式: a. 扫描逻辑卷: b. 激活扫描到的卷: c. 挂载 注:/dev/VolGroup00文件夹下面可能会有几个:lvm_root、lvm_swap、lvm…

    2023年7月20日
    1.3K00
  • windows使用ipmitools管理ipmi

    今日有个服务器IPMI密码忘记,无法登陆,但是服务器不能够进行重启,并且还是windows系统,所以尝试通过ipmitool进行管理 首先安装ipmitool http://s.cnaaa11.com/soft/ipmitool.zip 服务器本地win系统下安装此工具,用于对自身服务器BMC发送指令,实现带内管理: 安装步骤: 1) 将IPMIToolWi…

    2024年5月7日
    1.5K00
  • GLIBC修复笔记,学会这些让你更快的解决系统问题

    公司环境有台机器硬盘故障,需要安装Megacli工具进系统查看raid信息,在Ubuntu20.04安装Megacli解决依赖过程中失误将高版本的libtinfo包装系统上了,导致系统报Glibc对应的版本没有找到,系统实际Glibc的版本是2.31。 背景 公司环境有台机器硬盘故障,需要安装megacli工具进系统查看raid信息,在ubuntu20.04…

    2023年12月7日
    1.2K00
  • 通过远程桌面连接Windows系统的ECS实例时,提示“远程桌面连接已断开”错误怎么办?

    问题描述 通过远程桌面连接Windows系统的ECS实例时失败,并提示“远程桌面连接已断开”错误,具体显示如下图。 问题原因 通过VNC登录Windows实例,进入事件查看器查看系统日志,提示“终端服务器安全层在协议流中检测到错误,并已取消客户端连接”的错误,该问题可能是由于ECS实例的注册表中Certificate子键损坏导致的。 解决方案 本文操作以Wi…

    2023年11月15日
    1.3K00
  • CentOS 6 yum安装软件报错 YumRepo Error

    在CentOS 6的机器上使用yum 安装软件报错: 使用yum update命令也是一样: 看错误提示,似乎是说找不到有效的baseurl。所以要解决这个问题,还要从baseurl着手。从官方邮件可知,CentOS 6自从2020年11月30日开始,官方不再维护,所以连带着原来的yum存储库也不能用了。 但是邮件里说得很明白,它给出了迁移后的存储库的链接地…

    2023年5月25日
    1.0K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信