# jfrevents **Repository Path**: mirrors_SAP/jfrevents ## Basic Information - **Project Name**: jfrevents - **Description**: Collection of information on JFR events - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-15 - **Last Updated**: 2026-03-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [![REUSE status](https://api.reuse.software/badge/github.com/SAP/jfrevents)](https://api.reuse.software/info/github.com/SAP/jfrevents) [![Build and Deploy](https://github.com/SAP/jfrevents/actions/workflows/build.yml/badge.svg)](https://github.com/SAP/jfrevents/actions/workflows/build.yml) JFR Event Collector ===================== This project is collecting info on JFR events from JFR files and the OpenJDK source code, producing an extended metadata file which can be used by the JFR Event Explorer. The extended metadata includes - all events defined in the metadata.xml file and the JDK source code - additional descriptions: please contribute yourself - versions of the JDK in which every event, field, ... is present - examples for events and their fields for the renaissance benchmark with different GCs - AI generated descriptions for events and their fields The event collection is presented at [sap.github.io/jfrevents](https://sap.github.io/jfrevents/), created by the [website generator](./website). ## Want to contribute? Add new descriptions for events, types or fields to the `additional.xml` file. These descriptions should explain what the described entity represents and how it can be interpreted and used during profiling. I pledge to try to bring added descriptions into the OpenJDK (but only JDK head seems to be feasiable, so contributing it here still makes sense). ## Download - The collector JAR: [here](https://github.com/parttimenerd/jfreventcollector/releases/latest/download/jfreventcollector.jar). - The collection JAR (with all extended metadata xmls at your fingertips): [here](https://github.com/parttimenerd/jfreventcollector/releases/latest/download/jfreventcollection.jar). - The metadata itself: look no further than the releases page of this repository > **Note:** This library is no longer published to Maven Central due to lack of demand. > If you need Maven Central artifacts, please [file an issue](https://github.com/SAP/jfrevents/issues/new) > describing your use case. Useful when creating your own JFR Event Explorer like tool. The related JAR is called `jfreventcollection.jar` in the releases. ```kotlin // load and print the metadata for JDK 17 println(me.bechberger.collector.xml.Loader.load(17)) ``` ## Usage of the JFR processor The default processor run by the JAR processes a JFR file and prints all available information. ```sh # small sample (3710 events, 47 event types) java -jar jfreventcollector.jar samples/profile.jfr ``` `profile.jfr` is a recording of an execution of the renaissance benchmark suite (https://github.com/renaissance-benchmarks/renaissance). ## Usage of the Event Adder This adds the events found in the passed JDK source folder. ```sh java -cp jfreventcollector.jar me.bechberger.collector.EventAdderKt \ ``` ## Usage of the Example Adder This adds examples from the passed JFR file to the passed metadata file. ```sh java -cp jfreventcollector.jar me.bechberger.collector.ExampleAdderKt