简体中文 | English
A high performance, non-intrusive Java performance monitoring and statistical tool designed for high-concurrency, low-latency applications.
MyPerf4J collects dozens of metrics per application. All these metrics are collected and visualized in real-time.
This is a list of what it currently monitors: * Method Metrics
RPS, Count, Avg, Min, Max, StdDev, TP50, TP90, TP95, TP99, TP999, TP9999, TP100

Thread,Memory,ByteBuff,GC,Class,Compilation,FileDescriptor

Want to know how to achieve the above effect? Please start the application according to the description of Quick Start, and then follow the instructions in here to install and configure.
MyPerf4J adopts JavaAgent configuration mode, transparent access application, and the application code is completely no-intrusive.
README fileapp_name, metrics.log.xxx and filter.packages.include in MyPerf4J.properties Add the following two parameters to the JVM startup parameters * -javaagent:/path/to/MyPerf4J-ASM.jar * -DMyPerf4JPropFile=/path/to/MyPerf4J.properties
Like: java -javaagent:/path/to/MyPerf4J-ASM.jar -DMyPerf4JPropFile=/path/to/MyPerf4J.properties
-jar yourApp.jarNote: If you are using JDK 9 and above, please add
--add-opens java.base/java.lang=ALL-UNNAMEDas an additional flag.
Start your application, the output is to /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
Remove the following two parameters from the JVM startup parameters and restart to uninstall the tool. * -javaagent:/path/to/MyPerf4J-ASM.jar * -DMyPerf4JPropFile=/path/to/MyPerf4J.properties
You can build MyPerf4J-ASM.jar by yourself. * git clone git@github.com:LinShunKang/MyPerf4J.git * mvn clean package
MyPerf4J-ASM-${MyPerf4J-version}.jar at MyPerf4J-ASM/target/
If you encounter any issues or if you have a question, don't hesitate to create an issue or send email : )
Welcome to register the company name in this issue: https://github.com/LinShunKang/MyPerf4J/issues/30 (In order of registration)

Thanks JetBrains support provided by OpenSourceSupport : )
For more information about the project, please read https://github.com/LinShunKang/MyPerf4J/wiki/English-Doc.
$ claude mcp add MyPerf4J \
-- python -m otcore.mcp_server <graph>