microsoft/gctoolkit

GitHub: microsoft/gctoolkit

GCToolKit 是微软开源的一组 Java 库,用于将 HotSpot 垃圾回收日志解析为结构化事件并提供聚合分析 API,帮助开发者深入理解 JVM 内存管理行为。

Stars: 1295 | Forks: 171

# Microsoft GCToolKit GCToolKit 是一组用于分析 HotSpot Java 垃圾回收 (GC) 日志文件的库。该工具包将 GC 日志文件解析为独立的事件,并提供了一个 API 用于聚合这些事件中的数据。这使得用户能够对垃圾回收日志所代表的 Java 虚拟机 (JVM) 中的托管内存状态进行任意且复杂的分析。 欲了解更多详情,请阅读我们的[发布博客文章](https://devblogs.microsoft.com/java/introducing-microsoft-gctoolkit/)。 [![GCToolKit 使用 Maven 构建](https://static.pigsec.cn/wp-content/uploads/repos/cas/f5/f55b078785c0e12549ed8a712cf48a3748417122309f14350c42daa7756c0d32.svg)](https://github.com/microsoft/gctoolkit/actions/workflows/maven.yml) ## 简介 Java 虚拟机 (JVM) 中的托管内存由 3 个主要部分组成: 1. 称为 Java heap 的内存缓冲区 2. 负责将数据存入 Java heap 的分配器 3. 垃圾回收 (GC)。 虽然 GC 负责回收 Java heap 中不再使用的内存,但该术语通常被用作内存管理的委婉说法。关于 _调优 GC_ 或 _调优收集器_ 的表述常常被使用,人们通常理解这指的是调优 JVM 的内存管理子系统。调优 GC 的遥测数据的最佳来源是 GC 日志,而 GCToolKit 通过提供解析器、模型和用于构建分析的 API,在使这项任务变得更简单方面发挥了作用。您可以运行 Maven 项目 [HeapOccupancyAfterCollectionSummary 示例](./sample/README.md) 作为对此的一个说明。 ## 用法 为了使用该库,您需要将其依赖项添加到您的项目中。我们在下面提供了 Maven 的说明。 ### Maven 坐标 [![Maven Central](https://img.shields.io/maven-central/v/com.microsoft.gctoolkit/gctoolkit-parser.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22com.microsoft.gctoolkit%22%20AND%20a:%22gctoolkit-api%22) GCToolKit 的构件位于 [Maven Central](https://search.maven.org/search?q=g:com.microsoft.gctoolkit) 中。随后,您需要根据需要在 `dependencyManagement` 和/或 `dependencies` 部分将 `api`、`parser` 和 `vertx` 模块添加到您的项目中。 ``` ... com.microsoft.gctoolkit api 3.0.4 com.microsoft.gctoolkit parser 3.0.4 com.microsoft.gctoolkit vertx 3.0.4 ... ``` ### 示例 请参阅示例项目:[sample/README](./sample/README.md) ### 测试覆盖率报告 **核心 API 覆盖率**
![覆盖率](https://static.pigsec.cn/wp-content/uploads/repos/cas/e1/e1a2bc2ec9a33271b7a94fe385749ae35fe3c4fdf54fe691e36a7bf5f2a5620c.svg) **核心 :: Parser
**![Coverage::Core::Parser](https://static.pigsec.cn/wp-content/uploads/repos/cas/84/84b2a1f292759a9a4edd1beecf81a7159bb82481c93098881778b8464bf5d078.svg) **核心 :: Vertx**
![Coverage::Core::Parser](https://static.pigsec.cn/wp-content/uploads/repos/cas/26/2644624bec44a4724ab528384dc4b63d9f47bb9290e063723961b30f0441b67b.svg) ## 许可证 Microsoft GCToolKit 采用 [MIT](https://github.com/microsoft/gctoolkit/blob/master/LICENSE) 许可证授权。
标签:JS文件枚举, JVM, 垃圾回收, 域名枚举, 性能监控, 运维工具