1 <?xml version="1.0" encoding="utf-8"?>
   2 
   3 <!--
   4  Copyright (c) 2012, 2023, Oracle and/or its affiliates. All rights reserved.
   5  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   6 
   7  This code is free software; you can redistribute it and/or modify it
   8  under the terms of the GNU General Public License version 2 only, as
   9  published by the Free Software Foundation.
  10 
  11  This code is distributed in the hope that it will be useful, but WITHOUT
  12  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  version 2 for more details (a copy is included in the LICENSE file that
  15  accompanied this code).
  16 
  17  You should have received a copy of the GNU General Public License version
  18  2 along with this work; if not, write to the Free Software Foundation,
  19  Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 
  21  Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  or visit www.oracle.com if you need additional information or have any
  23  questions.
  24 
  25 -->
  26 
  27 <Metadata>
  28 
  29   <!-- Internal events are only to be used during development, i.e. temporary time measurements, without the need
  30        to modify .jfc files etc. Code that commits an internal event should NEVER be checked in.
  31 
  32        Example usage:
  33 
  34        #include "jfr/jfrEvents.hpp"
  35 
  36        void foo() {
  37          EventDuration event;
  38          bar();
  39          baz();
  40          event.commit();
  41        }
  42 
  43        $ make images
  44        $ java -XX:StartFlightRecording:settings=none,filename=dump.jfr ...
  45        ...
  46        $ jfr print dump.jfr
  47 
  48        Programmatic access:
  49        try (var rf = new RecordingFile(Path.of("dump.jfr)) {
  50            while (rf.hasMoreEvents()) {
  51                RecordedEvent e = rf.readEvent();
  52                System.out.println(e.getName() + " " + e.getDuration()));
  53            }
  54        };
  55   !-->
  56 
  57   <Event name="Duration" category="Java Virtual Machine, Internal" label="Duration" startTime="true" thread="true" stackTrace="false" internal="true">
  58   </Event>
  59 
  60   <Event name="Instant" category="Java Virtual Machine, Internal" label="Instant" startTime="false" thread="true" stackTrace="false" internal="true">
  61   </Event>
  62 
  63   <Event name="Value" category="Java Virtual Machine, Internal" label="Value" startTime="false" thread="true" stackTrace="false" internal="true">
  64     <Field type="ulong" name="value" label="Value"/>
  65   </Event>
  66 
  67   <Event name="Text" category="Java Virtual Machine, Internal" label="Text" startTime="false" thread="true" stackTrace="false" internal="true">
  68     <Field type="string" name="text" label="Text"/>
  69   </Event>
  70 
  71   <Event name="ZThreadDebug" category="Java Virtual Machine, GC, Detailed" label="ZGC Thread Event" description="Temporary latency measurements used during development and debugging of ZGC" thread="true" internal="true">
  72     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId"/>
  73     <Field type="string" name="name" label="Name" />
  74   </Event>
  75 
  76   <Event name="ResidentSetSize" category="Java Virtual Machine, Memory" label="Resident Set Size" description="Resident set size of the process" thread="false" period="everyChunk">
  77     <Field type="ulong" contentType="bytes" name="size" label="Resident Set Size" description="Resident set size of the process" />
  78     <Field type="ulong" contentType="bytes" name="peak" label="Resident Set Size Peak Value" description="Resident set size peak value of the process" />
  79   </Event>
  80 
  81   <!-- Ordinary and experimental events !-->
  82 
  83   <Event name="ThreadStart" category="Java Application" label="Java Thread Start" thread="true" startTime="false" stackTrace="true">
  84     <Field type="Thread" name="thread" label="New Java Thread" />
  85     <Field type="Thread" name="parentThread" label="Parent Java Thread" />
  86   </Event>
  87 
  88   <Event name="ThreadEnd" category="Java Application" label="Java Thread End" thread="true" startTime="false">
  89     <Field type="Thread" name="thread" label="Java Thread" />
  90   </Event>
  91 
  92   <Event name="ThreadPark" category="Java Application" label="Java Thread Park" thread="true" stackTrace="true">
  93     <Field type="Class" name="parkedClass" label="Class Parked On" />
  94     <Field type="long" contentType="nanos" name="timeout" label="Park Timeout" />
  95     <Field type="long" contentType="epochmillis" name="until" label="Park Until" />
  96     <Field type="ulong" contentType="address" name="address" label="Address of Object Parked" relation="JavaMonitorAddress" />
  97   </Event>
  98 
  99   <Event name="JavaMonitorEnter" category="Java Application" label="Java Monitor Blocked" thread="true" stackTrace="true">
 100     <Field type="Class" name="monitorClass" label="Monitor Class" />
 101     <Field type="Thread" name="previousOwner" label="Previous Monitor Owner" />
 102     <Field type="ulong" contentType="address" name="address" label="Monitor Address" relation="JavaMonitorAddress" />
 103   </Event>
 104 
 105   <Event name="JavaMonitorWait" category="Java Application" label="Java Monitor Wait" description="Waiting on a Java monitor" thread="true" stackTrace="true">
 106     <Field type="Class" name="monitorClass" label="Monitor Class" description="Class of object waited on" />
 107     <Field type="Thread" name="notifier" label="Notifier Thread" description="Notifying Thread" />
 108     <Field type="long" contentType="millis" name="timeout" label="Timeout" description="Maximum wait time" />
 109     <Field type="boolean" name="timedOut" label="Timed Out" description="Wait has been timed out" />
 110     <Field type="ulong" contentType="address" name="address" label="Monitor Address" description="Address of object waited on" relation="JavaMonitorAddress" />
 111   </Event>
 112 
 113   <Event name="JavaMonitorInflate" category="Java Application" label="Java Monitor Inflated" thread="true" stackTrace="true">
 114     <Field type="Class" name="monitorClass" label="Monitor Class" />
 115     <Field type="ulong" contentType="address" name="address" label="Monitor Address" relation="JavaMonitorAddress" />
 116     <Field type="InflateCause" name="cause" label="Monitor Inflation Cause" description="Cause of inflation" />
 117   </Event>
 118 
 119   <Event name="SyncOnValueBasedClass" category="Java Virtual Machine, Diagnostics" label="Value Based Class Synchronization" thread="true" stackTrace="true" startTime="false" experimental="true">
 120     <Field type="Class" name="valueBasedClass" label="Value Based Class" />
 121   </Event>
 122 
 123   <Event name="ContinuationFreeze" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Yield" description="Invocation of Continuation.yield()"
 124     thread="true" stackTrace="true">
 125     <Field type="Thread" name="carrierThread" label="Carrier Thread" description="Thread enlisted as a carrier" />
 126     <Field type="Class" name="continuationClass" label="Continuation Class" />
 127     <Field type="ushort" name="interpretedFrames" label="Interpreted Frames" />
 128     <Field type="ushort" contentType="bytes" name="size" label="Stack Size" />
 129   </Event>
 130 
 131   <Event name="ContinuationThaw" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Continue" description="Invocation of Continuation.run() on a started continuation"
 132     thread="true" stackTrace="true">
 133     <Field type="Thread" name="carrierThread" label="Carrier Thread" description="Thread enlisted as a carrier" />
 134     <Field type="Class" name="continuationClass" label="Continuation Class" />
 135     <Field type="ushort" name="interpretedFrames" label="Interpreted Frames" />
 136     <Field type="ushort" contentType="bytes" name="size" label="Stack Size" />
 137   </Event>
 138 
 139   <Event name="ContinuationFreezeFast" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Freeze Fast" thread="true" stackTrace="false" startTime="false">
 140     <Field type="ulong" name="id" label="Continuation ID" />
 141     <Field type="uint" name="size" label="Size" />
 142     <Field type="boolean" name="allocate" label="Allocated New" />
 143   </Event>
 144 
 145   <Event name="ContinuationFreezeSlow" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Freeze Slow" thread="true" stackTrace="false" startTime="false">
 146     <Field type="ulong" name="id" label="Continuation ID" />
 147   </Event>
 148 
 149   <Event name="ContinuationThawFast" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Thaw Fast" thread="true" stackTrace="false" startTime="false">
 150     <Field type="ulong" name="id" label="Continuation ID" />
 151     <Field type="boolean" name="full" label="Full" />
 152     <Field type="uint" name="size" label="Size" />
 153   </Event>
 154 
 155   <Event name="ContinuationThawSlow" experimental="true" category="Java Virtual Machine, Runtime" label="Continuation Thaw Slow" thread="true" stackTrace="false" startTime="false">
 156     <Field type="ulong" name="id" label="Continuation ID" />
 157   </Event>
 158 
 159   <Event name="ReservedStackActivation" category="Java Virtual Machine, Runtime" label="Reserved Stack Activation"
 160     description="Activation of Reserved Stack Area caused by stack overflow with ReservedStackAccess annotated method in call stack" thread="true" stackTrace="true"
 161     startTime="false">
 162     <Field type="Method" name="method" label="Java Method" />
 163   </Event>
 164 
 165   <Event name="ClassLoad" category="Java Virtual Machine, Class Loading" label="Class Load" thread="true" stackTrace="true">
 166     <Field type="Class" name="loadedClass" label="Loaded Class" />
 167     <Field type="ClassLoader" name="definingClassLoader" label="Defining Class Loader" />
 168     <Field type="ClassLoader" name="initiatingClassLoader" label="Initiating Class Loader" />
 169   </Event>
 170 
 171   <Event name="ClassDefine" category="Java Virtual Machine, Class Loading" label="Class Define" thread="true" stackTrace="true" startTime="false">
 172     <Field type="Class" name="definedClass" label="Defined Class" />
 173     <Field type="ClassLoader" name="definingClassLoader" label="Defining Class Loader" />
 174   </Event>
 175 
 176   <Event name="ClassRedefinition" category="Java Virtual Machine, Class Loading" label="Class Redefinition" thread="false" stackTrace="false" startTime="false">
 177     <Field type="Class" name="redefinedClass" label="Redefined Class" />
 178     <Field type="int" name="classModificationCount" label="Class Modification Count" description="The number of times the class has changed"/>
 179     <Field type="ulong" name="redefinitionId" label="Class Redefinition Id" relation="ClassRedefinitionId"/>
 180   </Event>
 181 
 182   <Event name="RedefineClasses" category="Java Virtual Machine, Class Loading" label="Redefine Classes" thread="true" stackTrace="true">
 183     <Field type="int" name="classCount" label="Class Count" />
 184     <Field type="ulong" name="redefinitionId" label="Class Redefinition Id" relation="ClassRedefinitionId" />
 185   </Event>
 186 
 187   <Event name="RetransformClasses" category="Java Virtual Machine, Class Loading" label="Retransform Classes" thread="true" stackTrace="true">
 188     <Field type="int" name="classCount" label="Class Count"/>
 189     <Field type="ulong" name="redefinitionId" label="Class Redefinition Id" relation="ClassRedefinitionId" />
 190   </Event>
 191 
 192   <Event name="ClassUnload" category="Java Virtual Machine, Class Loading" label="Class Unload" thread="true" startTime="false">
 193     <Field type="Class" name="unloadedClass" label="Unloaded Class" />
 194     <Field type="ClassLoader" name="definingClassLoader" label="Defining Class Loader" />
 195   </Event>
 196 
 197   <Event name="IntFlagChanged" category="Java Virtual Machine, Flag" label="Int Flag Changed" startTime="false">
 198     <Field type="string" name="name" label="Name" />
 199     <Field type="int" name="oldValue" label="Old Value" />
 200     <Field type="int" name="newValue" label="New Value" />
 201     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 202   </Event>
 203 
 204   <Event name="UnsignedIntFlagChanged" category="Java Virtual Machine, Flag" label="Unsigned Int Flag Changed" startTime="false">
 205     <Field type="string" name="name" label="Name" />
 206     <Field type="uint" name="oldValue" label="Old Value" />
 207     <Field type="uint" name="newValue" label="New Value" />
 208     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 209   </Event>
 210 
 211   <Event name="LongFlagChanged" category="Java Virtual Machine, Flag" label="Long Flag Changed" startTime="false">
 212     <Field type="string" name="name" label="Name" />
 213     <Field type="long" name="oldValue" label="Old Value" />
 214     <Field type="long" name="newValue" label="New Value" />
 215     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 216   </Event>
 217 
 218   <Event name="UnsignedLongFlagChanged" category="Java Virtual Machine, Flag" label="Unsigned Long Flag Changed" startTime="false">
 219     <Field type="string" name="name" label="Name" />
 220     <Field type="ulong" name="oldValue" label="Old Value" />
 221     <Field type="ulong" name="newValue" label="New Value" />
 222     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 223   </Event>
 224 
 225   <Event name="DoubleFlagChanged" category="Java Virtual Machine, Flag" label="Double Flag Changed" startTime="false">
 226     <Field type="string" name="name" label="Name" />
 227     <Field type="double" name="oldValue" label="Old Value" />
 228     <Field type="double" name="newValue" label="New Value" />
 229     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 230   </Event>
 231 
 232   <Event name="BooleanFlagChanged" category="Java Virtual Machine, Flag" label="Boolean Flag Changed" startTime="false">
 233     <Field type="string" name="name" label="Name" />
 234     <Field type="boolean" name="oldValue" label="Old Value" />
 235     <Field type="boolean" name="newValue" label="New Value" />
 236     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 237   </Event>
 238 
 239   <Event name="StringFlagChanged" category="Java Virtual Machine, Flag" label="String Flag Changed" startTime="false">
 240     <Field type="string" name="name" label="Name" />
 241     <Field type="string" name="oldValue" label="Old Value" />
 242     <Field type="string" name="newValue" label="New Value" />
 243     <Field type="FlagValueOrigin" name="origin" label="Origin" />
 244   </Event>
 245 
 246   <Type name="VirtualSpace">
 247     <Field type="ulong" contentType="address" name="start" label="Start Address" description="Start address of the virtual space" />
 248     <Field type="ulong" contentType="address" name="committedEnd" label="Committed End Address" description="End address of the committed memory for the virtual space" />
 249     <Field type="ulong" contentType="bytes" name="committedSize" label="Committed Size" description="Size of the committed memory for the virtual space" />
 250     <Field type="ulong" contentType="address" name="reservedEnd" label="Reserved End Address" description="End address of the reserved memory for the virtual space" />
 251     <Field type="ulong" contentType="bytes" name="reservedSize" label="Reserved Size" description="Size of the reserved memory for the virtual space" />
 252   </Type>
 253 
 254   <Type name="ObjectSpace">
 255     <Field type="ulong" contentType="address" name="start" label="Start Address" description="Start address of the space" />
 256     <Field type="ulong" contentType="address" name="end" label="End Address" description="End address of the space" />
 257     <Field type="ulong" contentType="bytes" name="used" label="Used" description="Bytes allocated by objects in the space" />
 258     <Field type="ulong" contentType="bytes" name="size" label="Size" description="Size of the space" />
 259   </Type>
 260 
 261   <Event name="GCHeapSummary" category="Java Virtual Machine, GC, Heap" label="Heap Summary" startTime="false">
 262     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 263     <Field type="GCWhen" name="when" label="When" />
 264     <Field type="VirtualSpace" struct="true" name="heapSpace" label="Heap Space" />
 265     <Field type="ulong" contentType="bytes" name="heapUsed" label="Heap Used" description="Bytes allocated by objects in the heap" />
 266   </Event>
 267 
 268   <Event name="GCHeapMemoryUsage" category="Java Virtual Machine, Heap" label="GC Heap Memory Usage" period="everyChunk">
 269     <Field type="ulong" contentType="bytes" name="used" label="Heap Used" description="Bytes allocated for storing objects on the heap" />
 270     <Field type="ulong" contentType="bytes" name="committed" label="Heap Committed" description="Bytes committed for storing objects on the heap" />
 271     <Field type="ulong" contentType="bytes" name="max" label="Heap Max" description="Max size for the heap" />
 272   </Event>
 273 
 274   <Event name="GCHeapMemoryPoolUsage" category="Java Virtual Machine, Heap" label="GC Heap Memory Pool Usage" period="everyChunk">
 275     <Field type="string" name="name" label="Name" description="GC Heap Memory Pool Name" />
 276     <Field type="ulong" contentType="bytes" name="used" label="GC Heap Memory Pool Used" description="Bytes used for storing objects in this memory pool" />
 277     <Field type="ulong" contentType="bytes" name="committed" label="GC Heap Memory Pool Committed" description="Bytes committed for storing objects in this memory pool" />
 278     <Field type="ulong" contentType="bytes" name="max" label="GC Heap Memory Pool Max" description="Max size for storing objects in this memory pool" />
 279   </Event>
 280 
 281   <Type name="MetaspaceSizes">
 282     <Field type="ulong" contentType="bytes" name="committed" label="Committed" description="Committed memory for this space" />
 283     <Field type="ulong" contentType="bytes" name="used" label="Used" description="Bytes allocated by objects in the space" />
 284     <Field type="ulong" contentType="bytes" name="reserved" label="Reserved" description="Reserved memory for this space" />
 285   </Type>
 286 
 287   <Event name="MetaspaceSummary" category="Java Virtual Machine, GC, Heap" label="Metaspace Summary" startTime="false">
 288     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 289     <Field type="GCWhen" name="when" label="When" />
 290     <Field type="ulong" contentType="bytes" name="gcThreshold" label="GC Threshold" />
 291     <Field type="MetaspaceSizes" struct="true" name="metaspace" label="Total" />
 292     <Field type="MetaspaceSizes" struct="true" name="dataSpace" label="Data" />
 293     <Field type="MetaspaceSizes" struct="true" name="classSpace" label="Class" />
 294   </Event>
 295 
 296   <Event name="MetaspaceGCThreshold" category="Java Virtual Machine, GC, Metaspace" label="Metaspace GC Threshold" startTime="false">
 297     <Field type="ulong" contentType="bytes" name="oldValue" label="Old Value" />
 298     <Field type="ulong" contentType="bytes" name="newValue" label="New Value" />
 299     <Field type="GCThresholdUpdater" name="updater" label="Updater" />
 300   </Event>
 301 
 302   <Event name="MetaspaceAllocationFailure" category="Java Virtual Machine, GC, Metaspace" label="Metaspace Allocation Failure" startTime="false"
 303     stackTrace="true">
 304     <Field type="ClassLoader" name="classLoader" label="Class Loader" />
 305     <Field type="boolean" name="hiddenClassLoader" label="Hidden Class Loader" />
 306     <Field type="ulong" contentType="bytes" name="size" label="Size" />
 307     <Field type="MetadataType" name="metadataType" label="Metadata Type" />
 308     <Field type="MetaspaceObjectType" name="metaspaceObjectType" label="Metaspace Object Type" />
 309   </Event>
 310 
 311   <Event name="MetaspaceOOM" category="Java Virtual Machine, GC, Metaspace" label="Metaspace Out of Memory" startTime="false" stackTrace="true">
 312     <Field type="ClassLoader" name="classLoader" label="Class Loader" />
 313     <Field type="boolean" name="hiddenClassLoader" label="Hidden Class Loader" />
 314     <Field type="ulong" contentType="bytes" name="size" label="Size" />
 315     <Field type="MetadataType" name="metadataType" label="Metadata Type" />
 316     <Field type="MetaspaceObjectType" name="metaspaceObjectType" label="Metaspace Object Type" />
 317   </Event>
 318 
 319   <Event name="MetaspaceChunkFreeListSummary" category="Java Virtual Machine, GC, Metaspace" label="Metaspace Chunk Free List Summary" startTime="false">
 320     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 321     <Field type="GCWhen" name="when" label="When" />
 322     <Field type="MetadataType" name="metadataType" label="Metadata Type" />
 323     <Field type="ulong" name="specializedChunks" label="Specialized Chunks" />
 324     <Field type="ulong" contentType="bytes" name="specializedChunksTotalSize" label="Specialized Chunks Total Size" />
 325     <Field type="ulong" name="smallChunks" label="Small Chunks" />
 326     <Field type="ulong" contentType="bytes" name="smallChunksTotalSize" label="Small Chunks Total Size" />
 327     <Field type="ulong" name="mediumChunks" label="Medium Chunks" />
 328     <Field type="ulong" contentType="bytes" name="mediumChunksTotalSize" label="Medium Chunks Total Size" />
 329     <Field type="ulong" name="humongousChunks" label="Humongous Chunks" />
 330     <Field type="ulong" contentType="bytes" name="humongousChunksTotalSize" label="Humongous Chunks Total Size" />
 331   </Event>
 332 
 333   <Event name="PSHeapSummary" category="Java Virtual Machine, GC, Heap" label="Parallel Scavenge Heap Summary" startTime="false">
 334     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 335     <Field type="GCWhen" name="when" label="When" />
 336     <Field type="VirtualSpace" struct="true" name="oldSpace" label="Old Space" />
 337     <Field type="ObjectSpace" struct="true" name="oldObjectSpace" label="Old Object Space" />
 338     <Field type="VirtualSpace" struct="true" name="youngSpace" label="Young Space" />
 339     <Field type="ObjectSpace" struct="true" name="edenSpace" label="Eden Space" />
 340     <Field type="ObjectSpace" struct="true" name="fromSpace" label="From Space" />
 341     <Field type="ObjectSpace" struct="true" name="toSpace" label="To Space" />
 342   </Event>
 343 
 344   <Event name="G1HeapSummary" category="Java Virtual Machine, GC, Heap" label="G1 Heap Summary" startTime="false">
 345     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 346     <Field type="GCWhen" name="when" label="When" />
 347     <Field type="ulong" contentType="bytes" name="edenUsedSize" label="Eden Used Size" />
 348     <Field type="ulong" contentType="bytes" name="edenTotalSize" label="Eden Total Size" />
 349     <Field type="ulong" contentType="bytes" name="survivorUsedSize" label="Survivor Used Size" />
 350     <Field type="ulong" contentType="bytes" name="oldGenUsedSize" label="Old Generation Used Size" />
 351     <Field type="uint" name="numberOfRegions" label="Number of Regions" />
 352   </Event>
 353 
 354   <Event name="GarbageCollection" category="Java Virtual Machine, GC, Collector" label="Garbage Collection" description="Garbage collection performed by the JVM" thread="true">
 355     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 356     <Field type="GCName" name="name" label="Name" description="The name of the Garbage Collector" />
 357     <Field type="GCCause" name="cause" label="Cause" description="The reason for triggering this Garbage Collection" />
 358     <Field type="Tickspan" name="sumOfPauses" label="Sum of Pauses" description="Sum of all the times in which Java execution was paused during the garbage collection" />
 359     <Field type="Tickspan" name="longestPause" label="Longest Pause" description="Longest individual pause during the garbage collection" />
 360   </Event>
 361 
 362   <Event name="SystemGC" category="Java Virtual Machine, GC, Collector" label="System GC" stackTrace="true" startTime="true" thread="true">
 363     <Field type="boolean" name="invokedConcurrent" label="Invoked Concurrent" />
 364   </Event>
 365 
 366   <Event name="ParallelOldGarbageCollection" category="Java Virtual Machine, GC, Collector" label="Parallel Old Garbage Collection"
 367     description="Extra information specific to Parallel Old Garbage Collections">
 368     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 369     <Field type="ulong" contentType="address" name="densePrefix" label="Dense Prefix" description="The address of the dense prefix, used when compacting" />
 370   </Event>
 371 
 372   <Event name="YoungGarbageCollection" category="Java Virtual Machine, GC, Collector" label="Young Garbage Collection" description="Extra information specific to Young Garbage Collections">
 373     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 374     <Field type="uint" name="tenuringThreshold" label="Tenuring Threshold" />
 375   </Event>
 376 
 377   <Event name="OldGarbageCollection" category="Java Virtual Machine, GC, Collector" label="Old Garbage Collection" description="Extra information specific to Old Garbage Collections">
 378     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 379   </Event>
 380 
 381   <Event name="G1GarbageCollection" category="Java Virtual Machine, GC, Collector" label="G1 Young Garbage Collection" description="Extra information specific to G1 Young Garbage Collections">
 382     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 383     <Field type="G1YCType" name="type" label="Type"/>
 384   </Event>
 385 
 386   <Event name="G1MMU" category="Java Virtual Machine, GC, Detailed" label="G1 MMU Information" startTime="false">
 387     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 388     <Field type="long" contentType="millis" name="timeSlice" label="Time Slice" description="Time slice used to calculate MMU" />
 389     <Field type="long" contentType="millis" name="gcTime" label="GC Time" description="Time stopped because of GC during last time slice" />
 390     <Field type="long" contentType="millis" name="pauseTarget" label="Pause Target" description="Max time allowed to be spent on GC during last time slice" />
 391   </Event>
 392 
 393   <Event name="EvacuationInformation" category="Java Virtual Machine, GC, Detailed" label="Evacuation Information" startTime="false">
 394     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 395     <Field type="uint" name="cSetRegions" label="Collection Set Regions" />
 396     <Field type="ulong" contentType="bytes" name="cSetUsedBefore" label="Collection Set Before" description="Memory usage before GC in the collection set regions" />
 397     <Field type="ulong" contentType="bytes" name="cSetUsedAfter" label="Collection Set After" description="Memory usage after GC in the collection set regions" />
 398     <Field type="uint" name="allocationRegions" label="Allocation Regions" description="Regions chosen as allocation regions during evacuation (includes survivors and old space regions)" />
 399     <Field type="ulong" contentType="bytes" name="allocationRegionsUsedBefore" label="Allocation Regions Before" description="Memory usage before GC in allocation regions" />
 400     <Field type="ulong" contentType="bytes" name="allocationRegionsUsedAfter" label="Allocation Regions After" description="Memory usage after GC in allocation regions" />
 401     <Field type="ulong" contentType="bytes" name="bytesCopied" label="Bytes Copied" />
 402     <Field type="uint" name="regionsFreed" label="Regions Freed" />
 403   </Event>
 404 
 405   <Event name="GCReferenceStatistics" category="Java Virtual Machine, GC, Reference" label="GC Reference Statistics" startTime="false"
 406     description="Total count of processed references during GC">
 407     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 408     <Field type="ReferenceType" name="type" label="Type" />
 409     <Field type="ulong" name="count" label="Total Count" />
 410   </Event>
 411 
 412   <Type name="CopyFailed">
 413     <Field type="ulong" name="objectCount" label="Object Count" />
 414     <Field type="ulong" contentType="bytes" name="firstSize" label="First Failed Object Size" />
 415     <Field type="ulong" contentType="bytes" name="smallestSize" label="Smallest Failed Object Size" />
 416     <Field type="ulong" contentType="bytes" name="totalSize" label="Total Object Size" />
 417   </Type>
 418 
 419   <Event name="ObjectCountAfterGC" category="Java Virtual Machine, GC, Detailed" startTime="false" label="Object Count after GC">
 420     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 421     <Field type="Class" name="objectClass" label="Object Class" />
 422     <Field type="long" name="count" label="Count" />
 423     <Field type="ulong" contentType="bytes" name="totalSize" label="Total Size" />
 424   </Event>
 425 
 426   <Type name="G1EvacuationStatistics">
 427     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 428     <Field type="ulong" contentType="bytes" name="allocated" label="Allocated" description="Total memory allocated by PLABs" />
 429     <Field type="ulong" contentType="bytes" name="wasted" label="Wasted" description="Total memory wasted within PLABs due to alignment or refill" />
 430     <Field type="ulong" contentType="bytes" name="used" label="Used" description="Total memory occupied by objects within PLABs" />
 431     <Field type="ulong" contentType="bytes" name="undoWaste" label="Undo Wasted" description="Total memory wasted due to allocation undo within PLABs" />
 432     <Field type="ulong" contentType="bytes" name="regionEndWaste" label="Region End Wasted" description="Total memory wasted at the end of regions due to refill" />
 433     <Field type="uint" name="regionsRefilled" label="Region Refills" description="Number of regions refilled" />
 434     <Field type="ulong" name="numPlabsFilled" label="PLAB Fills" description="Number of PLABs filled" />
 435     <Field type="ulong" contentType="bytes" name="directAllocated" label="Allocated (direct)" description="Total memory allocated using direct allocation outside of PLABs" />
 436     <Field type="ulong" name="numDirectAllocated" label="Direct allocations" description="Number of direct allocations" />
 437     <Field type="ulong" contentType="bytes" name="failureUsed" label="Used (failure)" description="Total memory occupied by objects in regions where evacuation failed" />
 438     <Field type="ulong" contentType="bytes" name="failureWaste" label="Wasted (failure)" description="Total memory left unused in regions where evacuation failed" />
 439   </Type>
 440 
 441   <Event name="G1EvacuationYoungStatistics" category="Java Virtual Machine, GC, Detailed" label="G1 Evacuation Statistics for Young" startTime="false"
 442     description="Memory related evacuation statistics during GC for the young generation">
 443     <Field type="G1EvacuationStatistics" struct="true" name="statistics" label="Evacuation Statistics" />
 444   </Event>
 445 
 446   <Event name="G1EvacuationOldStatistics" category="Java Virtual Machine, GC, Detailed" label="G1 Evacuation Memory Statistics for Old" startTime="false"
 447     description="Memory related evacuation statistics during GC for the old generation">
 448     <Field type="G1EvacuationStatistics" struct="true" name="statistics" label="Evacuation Statistics" />
 449   </Event>
 450 
 451   <Event name="G1BasicIHOP" category="Java Virtual Machine, GC, Detailed" label="G1 Basic IHOP Statistics" startTime="false"
 452     description="Basic statistics related to current IHOP calculation">
 453     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 454     <Field type="ulong" contentType="bytes" name="threshold" label="Current IHOP Threshold" description="Current IHOP threshold" />
 455     <Field type="float" contentType="percentage" name="thresholdPercentage" label="Current IHOP Threshold" description="Current IHOP threshold in percent of old generation" />
 456     <Field type="ulong" contentType="bytes" name="targetOccupancy" label="Target Occupancy" description="Target old generation occupancy to reach at the start of mixed GC" />
 457     <Field type="ulong" contentType="bytes" name="currentOccupancy" label="Current Occupancy" description="Current old generation occupancy" />
 458     <Field type="ulong" contentType="bytes" name="recentMutatorAllocationSize" label="Recent Mutator Allocation Size"
 459       description="Mutator allocation during mutator operation in the most recent interval" />
 460     <Field type="long" contentType="millis" name="recentMutatorDuration" label="Recent Mutator Duration" description="Time the mutator ran in the most recent interval" />
 461     <Field type="double" contentType="bytes-per-second" name="recentAllocationRate" label="Recent Allocation Rate" description="Allocation rate of the mutator in the most recent interval in bytes/second" />
 462     <Field type="long" contentType="millis" name="lastMarkingDuration" label="Last Marking Duration" description="Last time from the end of the last concurrent start to the first mixed GC" />
 463   </Event>
 464 
 465   <Event name="G1AdaptiveIHOP" category="Java Virtual Machine, GC, Detailed" label="G1 Adaptive IHOP Statistics" startTime="false"
 466     description="Statistics related to current adaptive IHOP calculation">
 467     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 468     <Field type="ulong" contentType="bytes" name="threshold" label="Threshold" description="Current IHOP Threshold" />
 469     <Field type="float" contentType="percentage" name="thresholdPercentage" label="Threshold" description="Current IHOP threshold in percent of the internal target occupancy" />
 470     <Field type="ulong" contentType="bytes" name="ihopTargetOccupancy" label="IHOP Target Occupancy" description="Internal target old generation occupancy to reach at the start of mixed GC" />
 471     <Field type="ulong" contentType="bytes" name="currentOccupancy" label="Current Occupancy" description="Current old generation occupancy" />
 472     <Field type="ulong" contentType="bytes" name="additionalBufferSize" label="Additional Buffer" description="Additional buffer size" experimental="true" />
 473     <Field type="double" contentType="bytes-per-second" name="predictedAllocationRate" label="Predicted Allocation Rate" description="Current predicted allocation rate for the mutator in bytes/second" />
 474     <Field type="long" contentType="millis" name="predictedMarkingDuration" label="Predicted Marking Duration"
 475       description="Current predicted time from the end of the last concurrent start to the first mixed GC" />
 476     <Field type="boolean" name="predictionActive" label="Prediction Active" description="Indicates whether the adaptive IHOP prediction is active" />
 477   </Event>
 478 
 479   <Event name="PromoteObjectInNewPLAB" category="Java Virtual Machine, GC, Detailed" label="Promotion in new PLAB"
 480     description="Object survived scavenge and was copied to a new Promotion Local Allocation Buffer (PLAB). Supported GCs are Parallel Scavenge, G1 and CMS with Parallel New. Due to promotion being done in parallel an object might be reported multiple times as the GC threads race to copy all objects."
 481     thread="true" stackTrace="false" startTime="false">
 482     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" description="Identifier signifying GC during which the object was promoted" />
 483     <Field type="Class" name="objectClass" label="Object Class" description="Class of promoted object" />
 484     <Field type="ulong" contentType="bytes" name="objectSize" label="Object Size" description="Size of promoted object" />
 485     <Field type="uint" name="tenuringAge" label="Object Tenuring Age"
 486       description="Tenuring age of a surviving object before being copied. The tenuring age of an object is a value between 0-15 and is incremented each scavenge the object survives. Newly allocated objects have tenuring age 0." />
 487     <Field type="boolean" name="tenured" label="Tenured" description="True if object was promoted to Old space, otherwise the object was aged and copied to a Survivor space" />
 488     <Field type="ulong" contentType="bytes" name="plabSize" label="PLAB Size" description="Size of the allocated PLAB to which the object was copied" />
 489   </Event>
 490 
 491   <Event name="PromoteObjectOutsidePLAB" category="Java Virtual Machine, GC, Detailed" label="Promotion outside PLAB"
 492     description="Object survived scavenge and was copied directly to the heap. Supported GCs are Parallel Scavenge, G1 and CMS with Parallel New. Due to promotion being done in parallel an object might be reported multiple times as the GC threads race to copy all objects."
 493     thread="true" stackTrace="false" startTime="false">
 494     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" description="Identifier signifying GC during which the object was promoted" />
 495     <Field type="Class" name="objectClass" label="Object Class" description="Class of promoted object" />
 496     <Field type="ulong" contentType="bytes" name="objectSize" label="Object Size" description="Size of promoted object" />
 497     <Field type="uint" name="tenuringAge" label="Object Tenuring Age"
 498       description="Tenuring age of a surviving object before being copied. The tenuring age of an object is a value between 0-15 and is incremented each scavenge the object survives. Newly allocated objects have tenuring age 0." />
 499     <Field type="boolean" name="tenured" label="Tenured" description="True if object was promoted to Old space, otherwise the object was aged and copied to a Survivor space" />
 500   </Event>
 501 
 502   <Event name="PromotionFailed" category="Java Virtual Machine, GC, Detailed" label="Promotion Failed" startTime="false" description="Promotion of an object failed">
 503     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 504     <Field type="CopyFailed" struct="true" name="promotionFailed" label="Promotion Failed Data" />
 505     <Field type="Thread" name="thread" label="Running thread" />
 506   </Event>
 507 
 508   <Event name="EvacuationFailed" category="Java Virtual Machine, GC, Detailed" label="Evacuation Failed" startTime="false" description="Evacuation of an object failed">
 509     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 510     <Field type="CopyFailed" struct="true" name="evacuationFailed" label="Evacuation Failed Data" />
 511   </Event>
 512 
 513   <Event name="ConcurrentModeFailure" category="Java Virtual Machine, GC, Detailed" label="Concurrent Mode Failure" startTime="false" description="Concurrent Mode failed">
 514     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 515   </Event>
 516 
 517   <Event name="GCCPUTime" category="Java Virtual Machine, GC, Detailed" label="GC CPU Time" description="GC CPU Time information. Supported: G1GC, ParallelGC and SerialGC"
 518     stackTrace="false" startTime="false">
 519     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 520     <Field type="ulong" contentType="nanos" name="userTime" label="User Time" />
 521     <Field type="ulong" contentType="nanos" name="systemTime" label="System Time" />
 522     <Field type="ulong" contentType="nanos" name="realTime" label="Real Time" />
 523   </Event>
 524 
 525   <Event name="GCPhasePause" category="Java Virtual Machine, GC, Phases" label="GC Phase Pause" thread="true">
 526     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 527     <Field type="string" name="name" label="Name" />
 528   </Event>
 529 
 530   <Event name="GCPhasePauseLevel1" category="Java Virtual Machine, GC, Phases" label="GC Phase Pause Level 1" thread="true">
 531     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 532     <Field type="string" name="name" label="Name" />
 533   </Event>
 534 
 535   <Event name="GCPhasePauseLevel2" category="Java Virtual Machine, GC, Phases" label="GC Phase Pause Level 2" thread="true">
 536     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 537     <Field type="string" name="name" label="Name" />
 538   </Event>
 539 
 540   <Event name="GCPhasePauseLevel3" category="Java Virtual Machine, GC, Phases" label="GC Phase Pause Level 3" thread="true">
 541     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 542     <Field type="string" name="name" label="Name" />
 543   </Event>
 544 
 545   <Event name="GCPhasePauseLevel4" category="Java Virtual Machine, GC, Phases" label="GC Phase Pause Level 4" thread="true">
 546     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 547     <Field type="string" name="name" label="Name" />
 548   </Event>
 549 
 550   <Event name="GCPhaseConcurrent" category="Java Virtual Machine, GC, Phases" label="GC Phase Concurrent" thread="true">
 551     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 552     <Field type="string" name="name" label="Name" />
 553   </Event>
 554 
 555   <Event name="GCPhaseConcurrentLevel1" category="Java Virtual Machine, GC, Phases" label="GC Phase Concurrent Level 1" thread="true">
 556     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 557     <Field type="string" name="name" label="Name" />
 558   </Event>
 559 
 560   <Event name="GCPhaseConcurrentLevel2" category="Java Virtual Machine, GC, Phases" label="GC Phase Concurrent Level 2" thread="true">
 561     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 562     <Field type="string" name="name" label="Name" />
 563   </Event>
 564 
 565   <Event name="GCPhaseParallel" category="Java Virtual Machine, GC, Phases" label="GC Phase Parallel"
 566          startTime="true" thread="true" description="GC phases for parallel workers">
 567     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId"/>
 568     <Field type="uint" name="gcWorkerId" label="GC Worker Identifier" />
 569     <Field type="string" name="name" label="Name" />
 570   </Event>
 571 
 572   <Event name="AllocationRequiringGC" category="Java Virtual Machine, GC, Detailed" label="Allocation Requiring GC" thread="true" stackTrace="true"
 573     startTime="false">
 574     <Field type="uint" name="gcId" label="Pending GC Identifier" relation="GcId" />
 575     <Field type="ulong" contentType="bytes" name="size" label="Allocation Size" />
 576   </Event>
 577 
 578   <Event name="TenuringDistribution" category="Java Virtual Machine, GC, Detailed" label="Tenuring Distribution" startTime="false">
 579     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
 580     <Field type="uint" name="age" label="Age" />
 581     <Field type="ulong" contentType="bytes" name="size" label="Size" />
 582   </Event>
 583 
 584   <Event name="G1HeapRegionTypeChange" category="Java Virtual Machine, GC, Detailed" label="G1 Heap Region Type Change" description="Information about a G1 heap region type change"
 585     startTime="false">
 586     <Field type="uint" name="index" label="Index" />
 587     <Field type="G1HeapRegionType" name="from" label="From" />
 588     <Field type="G1HeapRegionType" name="to" label="To" />
 589     <Field type="ulong" contentType="address" name="start" label="Start" />
 590     <Field type="ulong" contentType="bytes" name="used" label="Used" />
 591   </Event>
 592 
 593   <Event name="JITRestart" category="Java Virtual Machine, Compiler" label="JIT Restart"
 594          description="Restart of the JIT compilers after they were stopped"
 595          stackTrace="false" startTime="false" thread="true">
 596     <Field type="ulong" contentType="bytes" name="freedMemory" label="Freed Memory" />
 597     <Field type="ulong" contentType="bytes" name="codeCacheMaxCapacity" label="Code Cache Maximum Capacity" />
 598   </Event>
 599 
 600   <Event name="Compilation" category="Java Virtual Machine, Compiler" label="Compilation"
 601          description="Results of method compilation attempts"
 602          thread="true">
 603     <Field type="int" name="compileId" label="Compilation Identifier" relation="CompileId" />
 604     <Field type="CompilerType" name="compiler" label="Compiler" />
 605     <Field type="Method" name="method" label="Method" />
 606     <Field type="ushort" name="compileLevel" label="Compilation Level" />
 607     <Field type="boolean" name="succeded" label="Succeeded" />
 608     <Field type="boolean" name="isOsr" label="On Stack Replacement" />
 609     <Field type="ulong" contentType="bytes" name="codeSize" label="Compiled Code Size" />
 610     <Field type="ulong" contentType="bytes" name="inlinedBytes" label="Inlined Code Size" />
 611   </Event>
 612 
 613   <Event name="CompilerPhase" category="Java Virtual Machine, Compiler" label="Compiler Phase"
 614          description="Describes various phases of the compilation process like inlining or string optimization related phases"
 615          thread="true">
 616     <Field type="CompilerPhaseType" name="phase" label="Compile Phase" />
 617     <Field type="int" name="compileId" label="Compilation Identifier" relation="CompileId" />
 618     <Field type="ushort" name="phaseLevel" label="Phase Level" />
 619   </Event>
 620 
 621   <Event name="CompilationFailure" category="Java Virtual Machine, Compiler" label="Compilation Failure"
 622          description="In case a JIT compilation failed, a compilation failure is triggered, reporting the reason"
 623          thread="true" startTime="false">
 624     <Field type="string" name="failureMessage" label="Failure Message" />
 625     <Field type="int" name="compileId" label="Compilation Identifier" relation="CompileId" />
 626   </Event>
 627 
 628   <Type name="CalleeMethod">
 629     <Field type="string" name="type" label="Class" />
 630     <Field type="string" name="name" label="Method Name" />
 631     <Field type="string" name="descriptor" label="Method Descriptor" />
 632   </Type>
 633 
 634   <Event name="CompilerInlining" category="Java Virtual Machine, Compiler, Optimization" label="Method Inlining"
 635          description="Describes the result of a method inlining attempt"
 636          thread="true" startTime="false">
 637     <Field type="int" name="compileId" label="Compilation Identifier" relation="CompileId" />
 638     <Field type="Method" name="caller" label="Caller Method" />
 639     <Field type="CalleeMethod" name="callee" struct="true" label="Callee Method" />
 640     <Field type="boolean" name="succeeded" label="Succeeded" />
 641     <Field type="string" name="message" label="Message" />
 642     <Field type="int" name="bci" label="Bytecode Index" />
 643   </Event>
 644 
 645   <Event name="CodeCacheFull" category="Java Virtual Machine, Code Cache" label="Code Cache Full"
 646          description="A code heap is full, this leads to disabling the compiler"
 647          thread="true" startTime="false">
 648     <Field type="CodeBlobType" name="codeBlobType" label="Code Heap" />
 649     <Field type="ulong" contentType="address" name="startAddress" label="Start Address" />
 650     <Field type="ulong" contentType="address" name="commitedTopAddress" label="Commited Top" />
 651     <Field type="ulong" contentType="address" name="reservedTopAddress" label="Reserved Top" />
 652     <Field type="int" name="entryCount" label="Entries" />
 653     <Field type="int" name="methodCount" label="Methods" />
 654     <Field type="int" name="adaptorCount" label="Adaptors" />
 655     <Field type="ulong" contentType="bytes" name="unallocatedCapacity" label="Unallocated" />
 656     <Field type="int" name="fullCount" label="Full Count" />
 657     <Field type="ulong" contentType="bytes" name="codeCacheMaxCapacity" label="Code Cache Maximum Capacity" />
 658   </Event>
 659 
 660   <Event name="Deoptimization" category="Java Virtual Machine, Compiler" label="Deoptimization"
 661          description="Describes the detection of an uncommon situation in a compiled method which may lead to deoptimization of the method"
 662          thread="true" stackTrace="true" startTime="false">
 663     <Field type="int" name="compileId" label="Compilation Identifier" relation="CompileId" />
 664     <Field type="CompilerType" name="compiler" label="Compiler" />
 665     <Field type="Method" name="method" label="Method" />
 666     <Field type="int" name="lineNumber" label="Line Number" />
 667     <Field type="int" name="bci" label="Bytecode Index" />
 668     <Field type="Bytecode" name="instruction" label="Instruction" />
 669     <Field type="DeoptimizationReason" name="reason" label="Reason"/>
 670     <Field type="DeoptimizationAction" name="action" label="Action"/>
 671   </Event>
 672 
 673   <Event name="SafepointBegin" category="Java Virtual Machine, Runtime, Safepoint" label="Safepoint Begin" description="Safepointing begin" thread="true">
 674     <Field type="ulong" name="safepointId" label="Safepoint Identifier" relation="SafepointId" />
 675     <Field type="int" name="totalThreadCount" label="Total Threads" description="The total number of threads at the start of safe point" />
 676     <Field type="int" name="jniCriticalThreadCount" label="JNI Critical Threads" description="The number of threads in JNI critical sections" />
 677   </Event>
 678 
 679   <Event name="SafepointStateSynchronization" category="Java Virtual Machine, Runtime, Safepoint" label="Safepoint State Synchronization" description="Synchronize run state of threads"
 680     thread="true">
 681     <Field type="ulong" name="safepointId" label="Safepoint Identifier" relation="SafepointId" />
 682     <Field type="int" name="initialThreadCount" label="Initial Threads" description="The number of threads running at the beginning of state check" />
 683     <Field type="int" name="runningThreadCount" label="Running Threads" description="The number of threads still running" />
 684     <Field type="int" name="iterations" label="Iterations" description="Number of state check iterations" />
 685   </Event>
 686 
 687   <Event name="SafepointCleanup" category="Java Virtual Machine, Runtime, Safepoint" label="Safepoint Cleanup" description="Safepointing begin running cleanup tasks"
 688     thread="true">
 689     <Field type="ulong" name="safepointId" label="Safepoint Identifier" relation="SafepointId" />
 690   </Event>
 691 
 692   <Event name="SafepointCleanupTask" category="Java Virtual Machine, Runtime, Safepoint" label="Safepoint Cleanup Task" description="Safepointing begin running cleanup tasks"
 693     thread="true">
 694     <Field type="ulong" name="safepointId" label="Safepoint Identifier" relation="SafepointId" />
 695     <Field type="string" name="name" label="Task Name" description="The task name" />
 696   </Event>
 697 
 698   <Event name="SafepointEnd" category="Java Virtual Machine, Runtime, Safepoint" label="Safepoint End" description="Safepointing end" thread="true">
 699     <Field type="ulong" name="safepointId" label="Safepoint Identifier" relation="SafepointId" />
 700   </Event>
 701 
 702   <Event name="ExecuteVMOperation" category="Java Virtual Machine, Runtime" label="VM Operation" description="Execution of a VM Operation" thread="true">
 703     <Field type="VMOperationType" name="operation" label="Operation" />
 704     <Field type="boolean" name="safepoint" label="At Safepoint" description="If the operation occurred at a safepoint" />
 705     <Field type="boolean" name="blocking" label="Caller Blocked" description="If the calling thread was blocked until the operation was complete" />
 706     <Field type="Thread" name="caller" label="Caller" transition="from"
 707       description="Thread requesting operation. If non-blocking, will be set to 0 indicating thread is unknown" />
 708     <Field type="ulong" name="safepointId" label="Safepoint Identifier" description="The safepoint (if any) under which this operation was completed"
 709       relation="SafepointId" />
 710   </Event>
 711 
 712   <Event name="Shutdown" category="Java Virtual Machine, Runtime" label="JVM Shutdown" description="JVM shutting down" thread="true" stackTrace="true"
 713     startTime="false">
 714     <Field type="string" name="reason" label="Reason" description="Reason for JVM shutdown" />
 715   </Event>
 716 
 717   <Event name="ObjectAllocationInNewTLAB" category="Java Application" label="Allocation in new TLAB" description="Allocation in new Thread Local Allocation Buffer"
 718     thread="true" stackTrace="true" startTime="false">
 719     <Field type="Class" name="objectClass" label="Object Class" description="Class of allocated object" />
 720     <Field type="ulong" contentType="bytes" name="allocationSize" label="Allocation Size" />
 721     <Field type="ulong" contentType="bytes" name="tlabSize" label="TLAB Size" />
 722   </Event>
 723 
 724   <Event name="ObjectAllocationOutsideTLAB" category="Java Application" label="Allocation outside TLAB" description="Allocation outside Thread Local Allocation Buffers"
 725     thread="true" stackTrace="true" startTime="false">
 726     <Field type="Class" name="objectClass" label="Object Class" description="Class of allocated object" />
 727     <Field type="ulong" contentType="bytes" name="allocationSize" label="Allocation Size" />
 728   </Event>
 729 
 730   <Event name="ObjectAllocationSample" category="Java Application" label="Object Allocation Sample" thread="true" stackTrace="true" startTime="false" throttle="true">
 731     <Field type="Class" name="objectClass" label="Object Class" description="Class of allocated object" />
 732     <Field type="long" contentType="bytes" name="weight" label="Sample Weight"
 733       description="The relative weight of the sample. Aggregating the weights for a large number of samples, for a particular class, thread or stack trace, gives a statistically accurate representation of the allocation pressure" />
 734   </Event>
 735 
 736   <Event name="OldObjectSample" category="Java Virtual Machine, Profiling" label="Old Object Sample" description="A potential memory leak" stackTrace="true" thread="true"
 737     startTime="false" cutoff="true">
 738     <Field type="Ticks" name="allocationTime" label="Allocation Time" />
 739     <Field type="ulong" contentType="bytes" name="objectSize" label="Object Size" />
 740     <Field type="Tickspan" name="objectAge" label="Object Age" />
 741     <Field type="ulong" contentType="bytes" name="lastKnownHeapUsage" label="Last Known Heap Usage" />
 742     <Field type="OldObject" name="object" label="Object" />
 743     <Field type="int" name="arrayElements" label="Array Elements" description="If the object is an array, the number of elements, or minimum value for the type int if it is not an array" />
 744     <Field type="OldObjectGcRoot" name="root" label="GC Root" />
 745   </Event>
 746 
 747   <Event name="NativeMemoryUsage" category="Java Virtual Machine, Memory" label="Native Memory Usage Per Type"
 748     description="Native memory usage for a given memory type in the JVM" period="everyChunk">
 749     <Field type="NMTType" name="type" label="Memory Type" description="Type used for the native memory allocation" />
 750     <Field type="ulong" contentType="bytes" name="reserved" label="Reserved Memory" description="Reserved bytes for this type" />
 751     <Field type="ulong" contentType="bytes" name="committed" label="Committed Memory" description="Committed bytes for this type" />
 752   </Event>
 753 
 754   <Event name="NativeMemoryUsageTotal" category="Java Virtual Machine, Memory" label="Total Native Memory Usage"
 755     description="Total native memory usage for the JVM. Might not be the exact sum of the NativeMemoryUsage events due to timeing." period="everyChunk">
 756     <Field type="ulong" contentType="bytes" name="reserved" label="Reserved Memory" description="Total amount of reserved bytes for the JVM" />
 757     <Field type="ulong" contentType="bytes" name="committed" label="Committed Memory" description="Total amount of committed bytes for the JVM" />
 758   </Event>
 759 
 760   <Event name="DumpReason" category="Flight Recorder" label="Recording Reason"
 761          description="Who requested the recording and why"
 762          startTime="false">
 763     <Field type="string" name="reason" label="Reason" description="Reason for writing recording data to disk" />
 764     <Field type="int" name="recordingId" label="Recording Id" description="Id of the recording that triggered the dump, or -1 if it was not related to a recording" />
 765   </Event>
 766 
 767   <Event name="DataLoss" category="Flight Recorder" label="Data Loss"
 768          description="Data could not be copied out from a buffer, typically because of contention"
 769          startTime="false">
 770     <Field type="ulong" contentType="bytes" name="amount" label="Amount" description="Amount lost data" />
 771     <Field type="ulong" contentType="bytes" name="total" label="Total" description="Total lost amount for thread" />
 772   </Event>
 773 
 774   <Event name="JVMInformation" category="Java Virtual Machine" label="JVM Information"
 775          description="Description of JVM and the Java application"
 776          period="endChunk">
 777     <Field type="string" name="jvmName" label="JVM Name" />
 778     <Field type="string" name="jvmVersion" label="JVM Version" />
 779     <Field type="string" name="jvmArguments" label="JVM Command Line Arguments" />
 780     <Field type="string" name="jvmFlags" label="JVM Settings File Arguments" />
 781     <Field type="string" name="javaArguments" label="Java Application Arguments" />
 782     <Field type="long" contentType="epochmillis" name="jvmStartTime" label="JVM Start Time" />
 783     <Field type="long" name="pid" label="Process Identifier" />
 784      </Event>
 785 
 786   <Event name="OSInformation" category="Operating System" label="OS Information"
 787          description="Description of the OS the JVM runs on, for example, a uname-like output"
 788          period="endChunk">
 789     <Field type="string" name="osVersion" label="OS Version" />
 790   </Event>
 791 
 792   <Event name="VirtualizationInformation" category="Operating System" label="Virtualization Information"
 793          description="Description of the virtualization technology the JVM runs on"
 794          period="endChunk">
 795     <Field type="string" name="name" label="Name" />
 796   </Event>
 797 
 798   <Event name="InitialSystemProperty" category="Java Virtual Machine" label="Initial System Property" description="System Property at JVM start" period="endChunk">
 799     <Field type="string" name="key" label="Key" />
 800     <Field type="string" name="value" label="Value" />
 801   </Event>
 802 
 803   <Event name="InitialEnvironmentVariable" category="Operating System" label="Initial Environment Variable"
 804          description="Key-value pairs for environment variables at JVM startup"
 805          period="endChunk">
 806     <Field type="string" name="key" label="Key" />
 807     <Field type="string" name="value" label="Value" />
 808   </Event>
 809 
 810   <Event name="SystemProcess" category="Operating System" label="System Process" period="endChunk">
 811     <Field type="string" name="pid" label="Process Identifier" />
 812     <Field type="string" name="commandLine" label="Command Line" />
 813   </Event>
 814 
 815   <Event name="CPUInformation" category="Operating System, Processor" label="CPU Information"
 816          description="Characteristics and descriptions of the processor(s) the JVM is running on"
 817          period="endChunk">
 818     <Field type="string" name="cpu" label="Type" />
 819     <Field type="string" name="description" label="Description" />
 820     <Field type="uint" name="sockets" label="Sockets" />
 821     <Field type="uint" name="cores" label="Cores" />
 822     <Field type="uint" name="hwThreads" label="Hardware Threads" />
 823   </Event>
 824 
 825   <Event name="CPUTimeStampCounter" category="Operating System, Processor" label="CPU Time Stamp Counter"
 826          description="Information about the CPU time stamp mechanism / (RD)TSC"
 827          period="endChunk">
 828     <Field type="boolean" name="fastTimeEnabled" label="Fast Time" />
 829     <Field type="boolean" name="fastTimeAutoEnabled" label="Trusted Platform" />
 830     <Field type="long" contentType="hertz" name="osFrequency" label="OS Frequency" />
 831     <Field type="long" contentType="hertz" name="fastTimeFrequency" label="Fast Time Frequency" />
 832   </Event>
 833 
 834   <Event name="CPULoad" category="Operating System, Processor" label="CPU Load"
 835          description="Information about the recent CPU usage of the JVM process"
 836          period="everyChunk">
 837     <Field type="float" contentType="percentage" name="jvmUser" label="JVM User" />
 838     <Field type="float" contentType="percentage" name="jvmSystem" label="JVM System" />
 839     <Field type="float" contentType="percentage" name="machineTotal" label="Machine Total" />
 840   </Event>
 841 
 842   <Event name="ThreadCPULoad" category="Operating System, Processor" label="Thread CPU Load" period="everyChunk" thread="true">
 843     <Field type="float" contentType="percentage" name="user" label="User Mode CPU Load" description="User mode thread CPU load" />
 844     <Field type="float" contentType="percentage" name="system" label="System Mode CPU Load" description="System mode thread CPU load" />
 845   </Event>
 846 
 847   <Event name="ThreadContextSwitchRate" category="Operating System, Processor" label="Thread Context Switch Rate" period="everyChunk">
 848     <Field type="float" contentType="hertz" name="switchRate" label="Switch Rate" description="Number of context switches per second" />
 849   </Event>
 850 
 851   <Event name="CompilerQueueUtilization" category="Java Virtual Machine, Compiler" label="Compiler Queue Utilization" period="everyChunk">
 852     <Field type="CompilerType" name="compiler" label="Compiler" />
 853     <Field type="long" contentType="hertz" name="addedRate" label="Requets Added Rate" description="Requests added per second"/>
 854     <Field type="long" contentType="hertz" name="removedRate" label="Requests Removed Rate" description="Requests removed per second"/>
 855     <Field type="long" name="queueSize" label="Queue Size"/>
 856     <Field type="long" name="peakQueueSize" label="Peak Queue Size"/>
 857     <Field type="long" name="addedCount" label="Requests Added"/>
 858     <Field type="long" name="removedCount" label="Requests Removed"/>
 859     <Field type="long" name="totalAddedCount" label="Total Requests Added"/>
 860     <Field type="long" name="totalRemovedCount" label="Total Requests Removed"/>
 861     <Field type="int" name="compilerThreadCount" label="Compiler Thread Count"/>
 862   </Event>
 863 
 864   <Event name="NetworkUtilization" category="Operating System, Network" label="Network Utilization" period="everyChunk">
 865     <Field type="NetworkInterfaceName" name="networkInterface" label="Network Interface" description="Network Interface Name"/>
 866     <Field type="long" contentType="bits-per-second" name="readRate" label="Read Rate" description="Number of incoming bits per second"/>
 867     <Field type="long" contentType="bits-per-second" name="writeRate" label="Write Rate" description="Number of outgoing bits per second"/>
 868   </Event>
 869 
 870   <Event name="JavaThreadStatistics" category="Java Application, Statistics" label="Java Thread Statistics" period="everyChunk">
 871     <Field type="long" name="activeCount" label="Active Threads" description="Number of live active threads including both daemon and non-daemon threads" />
 872     <Field type="long" name="daemonCount" label="Daemon Threads" description="Number of live daemon threads" />
 873     <Field type="long" name="accumulatedCount" label="Accumulated Threads" description="Number of threads created and also started since JVM start" />
 874     <Field type="long" name="peakCount" label="Peak Threads" description="Peak live thread count since JVM start or when peak count was reset" />
 875   </Event>
 876 
 877   <Event name="ClassLoadingStatistics" category="Java Application, Statistics" label="Class Loading Statistics" period="everyChunk">
 878     <Field type="long" name="loadedClassCount" label="Loaded Class Count" description="Number of classes loaded since JVM start" />
 879     <Field type="long" name="unloadedClassCount" label="Unloaded Class Count" description="Number of classes unloaded since JVM start" />
 880   </Event>
 881 
 882   <Event name="ClassLoaderStatistics" category="Java Application, Statistics" label="Class Loader Statistics" period="everyChunk">
 883     <Field type="ClassLoader" name="classLoader" label="Class Loader" />
 884     <Field type="ClassLoader" name="parentClassLoader" label="Parent Class Loader" />
 885     <Field type="ulong" contentType="address" name="classLoaderData" label="ClassLoaderData Pointer" description="Pointer to the ClassLoaderData structure in the JVM" />
 886     <Field type="long" name="classCount" label="Classes" description="Number of loaded classes" />
 887     <Field type="ulong" contentType="bytes" name="chunkSize" label="Total Chunk Size" description="Total size of all allocated metaspace chunks (each chunk has several blocks)" />
 888     <Field type="ulong" contentType="bytes" name="blockSize" label="Total Block Size" description="Total size of all allocated metaspace blocks (each chunk has several blocks)" />
 889     <Field type="long" name="hiddenClassCount" label="Hidden Classes" description="Number of hidden classes" />
 890     <Field type="ulong" contentType="bytes" name="hiddenChunkSize" label="Total Hidden Classes Chunk Size"
 891       description="Total size of all allocated metaspace chunks for hidden classes (each chunk has several blocks)" />
 892     <Field type="ulong" contentType="bytes" name="hiddenBlockSize" label="Total Hidden Classes Block Size"
 893       description="Total size of all allocated metaspace blocks for hidden classes (each chunk has several blocks)" />
 894   </Event>
 895 
 896   <Event name="SymbolTableStatistics" category="Java Virtual Machine, Runtime, Tables" label="Symbol Table Statistics" period="everyChunk">
 897     <Field type="ulong" name="bucketCount" label="Bucket Count" description="Number of buckets" />
 898     <Field type="ulong" name="entryCount" label="Entry Count" description="Number of all entries" />
 899     <Field type="ulong" contentType="bytes" name="totalFootprint" label="Total Footprint" description="Total memory footprint (the table itself plus all of the entries)" />
 900     <Field type="ulong" name="bucketCountMaximum" label="Maximum Bucket Count" description="The maximum bucket length (entries in a single bucket)" />
 901     <Field type="float" name="bucketCountAverage" label="Average Bucket Count" description="The average bucket length" />
 902     <Field type="float" name="bucketCountVariance" label="Bucket Count Variance" description="How far bucket lengths are spread out from their average value" />
 903     <Field type="float" name="bucketCountStandardDeviation" label="Bucket Count Standard Deviation" description="How far bucket lengths are spread out from their mean (expected) value" />
 904     <Field type="float" name="insertionRate" label="Insertion Rate" description="How many items were added since last event (per second)" />
 905     <Field type="float" name="removalRate" label="Removal Rate" description="How many items were removed since last event (per second)" />
 906   </Event>
 907 
 908   <Event name="StringTableStatistics" category="Java Virtual Machine, Runtime, Tables" label="String Table Statistics" period="everyChunk">
 909     <Field type="ulong" name="bucketCount" label="Bucket Count" description="Number of buckets" />
 910     <Field type="ulong" name="entryCount" label="Entry Count" description="Number of all entries" />
 911     <Field type="ulong" contentType="bytes" name="totalFootprint" label="Total Footprint" description="Total memory footprint (the table itself plus all of the entries)" />
 912     <Field type="ulong" name="bucketCountMaximum" label="Maximum Bucket Count" description="The maximum bucket length (entries in a single bucket)" />
 913     <Field type="float" name="bucketCountAverage" label="Average Bucket Count" description="The average bucket length" />
 914     <Field type="float" name="bucketCountVariance" label="Bucket Count Variance" description="How far bucket lengths are spread out from their average value" />
 915     <Field type="float" name="bucketCountStandardDeviation" label="Bucket Count Standard Deviation" description="How far bucket lengths are spread out from their mean (expected) value" />
 916     <Field type="float" name="insertionRate" label="Insertion Rate" description="How many items were added since last event (per second)" />
 917     <Field type="float" name="removalRate" label="Removal Rate" description="How many items were removed since last event (per second)" />
 918   </Event>
 919 
 920   <Event name="ThreadAllocationStatistics" category="Java Application, Statistics" label="Thread Allocation Statistics" period="everyChunk">
 921     <Field type="ulong" contentType="bytes" name="allocated" label="Allocated" description="Approximate number of bytes allocated since thread start" />
 922     <Field type="Thread" name="thread" label="Thread" />
 923   </Event>
 924 
 925   <Event name="PhysicalMemory" category="Operating System, Memory" label="Physical Memory" description="OS Physical Memory" period="everyChunk">
 926     <Field type="ulong" contentType="bytes" name="totalSize" label="Total Size" description="Total amount of physical memory available to OS" />
 927     <Field type="ulong" contentType="bytes" name="usedSize" label="Used Size" description="Total amount of physical memory in use" />
 928   </Event>
 929 
 930   <Event name="SwapSpace" category="Operating System, Memory" label="Swap Space" description="OS Swap Space" period="everyChunk">
 931     <Field type="long" contentType="bytes" name="totalSize" label="Total Size" description="Total swap space available to the OS" />
 932     <Field type="long" contentType="bytes" name="freeSize" label="Free Size" description="Free swap space" />
 933   </Event>
 934 
 935   <Event name="ExecutionSample" category="Java Virtual Machine, Profiling" label="Method Profiling Sample" description="Snapshot of a threads state"
 936     period="everyChunk">
 937     <Field type="Thread" name="sampledThread" label="Thread" />
 938     <Field type="StackTrace" name="stackTrace" label="Stack Trace" />
 939     <Field type="ThreadState" name="state" label="Thread State" />
 940   </Event>
 941 
 942   <Event name="NativeMethodSample" category="Java Virtual Machine, Profiling" label="Method Profiling Sample Native" description="Snapshot of a threads state when in native"
 943     period="everyChunk">
 944     <Field type="Thread" name="sampledThread" label="Thread" />
 945     <Field type="StackTrace" name="stackTrace" label="Stack Trace" />
 946     <Field type="ThreadState" name="state" label="Thread State" />
 947   </Event>
 948 
 949   <Event name="ThreadDump" category="Java Virtual Machine, Runtime" label="Thread Dump" period="everyChunk">
 950     <Field type="string" name="result" label="Thread Dump" />
 951   </Event>
 952 
 953   <Event name="NativeLibrary" category="Java Virtual Machine, Runtime" label="Native Library" period="everyChunk"
 954     description="Information about a dynamic library or other native image loaded by the JVM process">
 955     <Field type="string" name="name" label="Name" />
 956     <Field type="ulong" contentType="address" name="baseAddress" label="Base Address" description="Starting address of the module" />
 957     <Field type="ulong" contentType="address" name="topAddress" label="Top Address" description="Ending address of the module, if available" />
 958   </Event>
 959 
 960   <Event name="NativeLibraryLoad" category="Java Virtual Machine, Runtime" label="Native Library Load" thread="true" stackTrace="true" startTime="true"
 961     description="Information about a dynamic library or other native image load operation">
 962     <Field type="string" name="name" label="Name" />
 963     <Field type="boolean" name="success" label="Success" description="Success or failure of the load operation" />
 964     <Field type="string" name="errorMessage" label="Error Message" description="In case of a load error, error description" />
 965     <Field type="boolean" name="fpEnvCorrectionAttempt" label="FPU Environment correction" description="In case of IEEE conformance issues we might reset the FP environment" />
 966     <Field type="boolean" name="fpEnvCorrectionSuccess" label="FPU Environment correction result" description="Stores the result in the case of an FP environment correction" />
 967   </Event>
 968 
 969   <Event name="NativeLibraryUnload" category="Java Virtual Machine, Runtime" label="Native Library Unload" thread="true" stackTrace="true" startTime="true"
 970     description="Information about a dynamic library or other native image unload operation">
 971     <Field type="string" name="name" label="Name" />
 972     <Field type="boolean" name="success" label="Success" description="Success or failure of the unload operation" />
 973     <Field type="string" name="errorMessage" label="Error Message" description="In case of an unload error, error description" />
 974   </Event>
 975 
 976   <Event name="ModuleRequire" category="Java Virtual Machine, Runtime, Modules" label="Module Require" thread="false" period="everyChunk"
 977     description="A directed edge representing a dependency">
 978     <Field type="Module" name="source" label="Source Module" />
 979     <Field type="Module" name="requiredModule" label="Required Module" />
 980   </Event>
 981 
 982   <Event name="ModuleExport" category="Java Virtual Machine, Runtime, Modules" label="Module Export" thread="false" period="everyChunk">
 983     <Field type="Package" name="exportedPackage" label="Exported Package" />
 984     <Field type="Module" name="targetModule" label="Target Module"
 985       description="Module to which the package is qualifiedly exported. If null or N/A, the package is unqualifiedly exported" />
 986   </Event>
 987 
 988   <Event name="CompilerStatistics" category="Java Virtual Machine, Compiler" label="Compiler Statistics" thread="false" period="everyChunk" startTime="false">
 989     <Field type="int" name="compileCount" label="Compiled Methods" />
 990     <Field type="int" name="bailoutCount" label="Bailouts" />
 991     <Field type="int" name="invalidatedCount" label="Invalidated Compilations" />
 992     <Field type="int" name="osrCompileCount" label="OSR Compilations" />
 993     <Field type="int" name="standardCompileCount" label="Standard Compilations" />
 994     <Field type="ulong" contentType="bytes" name="osrBytesCompiled" label="OSR Bytes Compiled" />
 995     <Field type="ulong" contentType="bytes" name="standardBytesCompiled" label="Standard Bytes Compiled" />
 996     <Field type="ulong" contentType="bytes" name="nmethodsSize" label="Compilation Resulting Size" />
 997     <Field type="ulong" contentType="bytes" name="nmethodCodeSize" label="Compilation Resulting Code Size" />
 998     <Field type="long" contentType="millis" name="peakTimeSpent" label="Peak Time" />
 999     <Field type="long" contentType="millis" name="totalTimeSpent" label="Total time" />
1000   </Event>
1001 
1002   <Event name="CompilerConfiguration" category="Java Virtual Machine, Compiler" label="Compiler Configuration" thread="false" period="endChunk" startTime="false">
1003     <Field type="int" name="threadCount" label="Thread Count" />
1004     <Field type="boolean" name="tieredCompilation" label="Tiered Compilation" />
1005     <Field type="boolean" name="dynamicCompilerThreadCount" label="Uses Dynamic Number of Compiler Threads" />
1006   </Event>
1007 
1008   <Event name="CodeCacheStatistics" category="Java Virtual Machine, Code Cache" label="Code Cache Statistics" thread="false" period="everyChunk" startTime="false">
1009     <Field type="CodeBlobType" name="codeBlobType" label="Code Heap" />
1010     <Field type="ulong" contentType="address" name="startAddress" label="Start Address" />
1011     <Field type="ulong" contentType="address" name="reservedTopAddress" label="Reserved Top" />
1012     <Field type="int" name="entryCount" label="Entries" />
1013     <Field type="int" name="methodCount" label="Methods" />
1014     <Field type="int" name="adaptorCount" label="Adaptors" />
1015     <Field type="ulong" contentType="bytes" name="unallocatedCapacity" label="Unallocated" />
1016     <Field type="int" name="fullCount" label="Full Count" />
1017   </Event>
1018 
1019   <Event name="CodeCacheConfiguration" category="Java Virtual Machine, Code Cache" label="Code Cache Configuration" thread="false" period="endChunk" startTime="false">
1020     <Field type="ulong" contentType="bytes" name="initialSize" label="Initial Size" />
1021     <Field type="ulong" contentType="bytes" name="reservedSize" label="Reserved Size" />
1022     <Field type="ulong" contentType="bytes" name="nonNMethodSize" label="Non-nmethod Size" />
1023     <Field type="ulong" contentType="bytes" name="profiledSize" label="Profiled Size" />
1024     <Field type="ulong" contentType="bytes" name="nonProfiledSize" label="Non-profiled Size" />
1025     <Field type="ulong" contentType="bytes" name="expansionSize" label="Expansion size" />
1026     <Field type="ulong" contentType="bytes" name="minBlockLength" label="Minimum Block Length" />
1027     <Field type="ulong" contentType="address" name="startAddress" label="Start Address" />
1028     <Field type="ulong" contentType="address" name="reservedTopAddress" label="Reserved Top" />
1029   </Event>
1030 
1031   <Event name="IntFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Int Flag">
1032     <Field type="string" name="name" label="Name" />
1033     <Field type="int" name="value" label="Value" />
1034     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1035   </Event>
1036 
1037   <Event name="UnsignedIntFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Unsigned Int Flag">
1038     <Field type="string" name="name" label="Name" />
1039     <Field type="uint" name="value" label="Value" />
1040     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1041   </Event>
1042 
1043   <Event name="LongFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Long Flag">
1044     <Field type="string" name="name" label="Name" />
1045     <Field type="long" name="value" label="Value" />
1046     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1047   </Event>
1048 
1049   <Event name="UnsignedLongFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Unsigned Long Flag">
1050     <Field type="string" name="name" label="Name" />
1051     <Field type="ulong" name="value" label="Value" />
1052     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1053   </Event>
1054 
1055   <Event name="DoubleFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Double Flag">
1056     <Field type="string" name="name" label="Name" />
1057     <Field type="double" name="value" label="Value" />
1058     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1059   </Event>
1060 
1061   <Event name="BooleanFlag" category="Java Virtual Machine, Flag" period="endChunk" label="Boolean Flag">
1062     <Field type="string" name="name" label="Name" />
1063     <Field type="boolean" name="value" label="Value" />
1064     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1065   </Event>
1066 
1067   <Event name="StringFlag" category="Java Virtual Machine, Flag" period="endChunk" label="String Flag">
1068     <Field type="string" name="name" label="Name" />
1069     <Field type="string" name="value" label="Value" />
1070     <Field type="FlagValueOrigin" name="origin" label="Origin" />
1071   </Event>
1072 
1073   <Event name="ObjectCount" category="Java Virtual Machine, GC, Detailed" startTime="false" period="everyChunk" label="Object Count">
1074     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
1075     <Field type="Class" name="objectClass" label="Object Class" />
1076     <Field type="long" name="count" label="Count" />
1077     <Field type="ulong" contentType="bytes" name="totalSize" label="Total Size" />
1078   </Event>
1079 
1080   <Event name="G1HeapRegionInformation" category="Java Virtual Machine, GC, Detailed" label="G1 Heap Region Information" description="Information about a specific heap region in the G1 GC"
1081     period="everyChunk">
1082     <Field type="uint" name="index" label="Index" />
1083     <Field type="G1HeapRegionType" name="type" label="Type" />
1084     <Field type="ulong" contentType="address" name="start" label="Start" />
1085     <Field type="ulong" contentType="bytes" name="used" label="Used" />
1086   </Event>
1087 
1088   <Event name="GCConfiguration" category="Java Virtual Machine, GC, Configuration" label="GC Configuration" description="The configuration of the garbage collector"
1089     period="endChunk">
1090     <Field type="GCName" name="youngCollector" label="Young Garbage Collector" description="The garbage collector used for the young generation" />
1091     <Field type="GCName" name="oldCollector" label="Old Garbage Collector" description="The garbage collector used for the old generation" />
1092     <Field type="uint" name="parallelGCThreads" label="Parallel GC Threads" description="Number of parallel threads to use for garbage collection" />
1093     <Field type="uint" name="concurrentGCThreads" label="Concurrent GC Threads" description="Number of concurrent threads to use for garbage collection" />
1094     <Field type="boolean" name="usesDynamicGCThreads" label="Uses Dynamic GC Threads" description="Whether a dynamic number of GC threads are used or not" />
1095     <Field type="boolean" name="isExplicitGCConcurrent" label="Concurrent Explicit GC" description="Whether System.gc() is concurrent or not" />
1096     <Field type="boolean" name="isExplicitGCDisabled" label="Disabled Explicit GC" description="Whether System.gc() will cause a garbage collection or not" />
1097     <Field type="long" contentType="millis" name="pauseTarget" label="Pause Target" description="Target for GC pauses" />
1098     <Field type="uint" name="gcTimeRatio" label="GC Time Ratio" description="Target for runtime vs garbage collection time" />
1099   </Event>
1100 
1101   <Event name="GCSurvivorConfiguration" category="Java Virtual Machine, GC, Configuration" label="GC Survivor Configuration"
1102     description="The configuration of the survivors of garbage collection" period="endChunk">
1103     <Field type="ubyte" name="maxTenuringThreshold" label="Maximum Tenuring Threshold" description="Upper limit for the age of how old objects to keep in the survivor area" />
1104     <Field type="ubyte" name="initialTenuringThreshold" label="Initial Tenuring Threshold" description="Initial age limit for how old objects to keep in survivor area" />
1105   </Event>
1106 
1107   <Event name="GCTLABConfiguration" category="Java Virtual Machine, GC, Configuration" label="TLAB Configuration"
1108     description="The configuration of the Thread Local Allocation Buffers (TLABs)" period="endChunk">
1109     <Field type="boolean" name="usesTLABs" label="TLABs Used" description="If Thread Local Allocation Buffers (TLABs) are in use" />
1110     <Field type="ulong" contentType="bytes" name="minTLABSize" label="Minimum TLAB Size" />
1111     <Field type="ulong" contentType="bytes" name="tlabRefillWasteLimit" label="TLAB Refill Waste Limit" />
1112   </Event>
1113 
1114   <Event name="GCHeapConfiguration" category="Java Virtual Machine, GC, Configuration" label="GC Heap Configuration" description="The configuration of the garbage collected heap"
1115     period="endChunk">
1116     <Field type="ulong" contentType="bytes" name="minSize" label="Minimum Heap Size" />
1117     <Field type="ulong" contentType="bytes" name="maxSize" label="Maximum Heap Size" />
1118     <Field type="ulong" contentType="bytes" name="initialSize" label="Initial Heap Size" />
1119     <Field type="boolean" name="usesCompressedOops" label="If Compressed Oops Are Used" description="If compressed Oops (Ordinary Object Pointers) are enabled" />
1120     <Field type="NarrowOopMode" name="compressedOopsMode" label="Compressed Oops Mode" description="The kind of compressed oops being used" />
1121     <Field type="ulong" contentType="bytes" name="objectAlignment" label="Object Alignment" description="Object alignment (in bytes) on the heap" />
1122     <Field type="ubyte" name="heapAddressBits" label="Heap Address Size" description="Heap Address Size (in bits)" />
1123   </Event>
1124 
1125   <Event name="YoungGenerationConfiguration" category="Java Virtual Machine, GC, Configuration" label="Young Generation Configuration"
1126     description="The configuration of the young generation of the garbage collected heap" period="endChunk">
1127     <Field type="ulong" contentType="bytes" name="minSize" label="Minimum Young Generation Size" />
1128     <Field type="ulong" contentType="bytes" name="maxSize" label="Maximum Young Generation Size" />
1129     <Field type="uint" name="newRatio" label="New Ratio" description="The size of the young generation relative to the tenured generation" />
1130   </Event>
1131 
1132   <Event name="ZYoungGarbageCollection" category="Java Virtual Machine, GC, Collector" label="ZGC Young Garbage Collection" description="Extra information specific to ZGC Young Garbage Collections" thread="true">
1133     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
1134     <Field type="uint" name="tenuringThreshold" label="Tenuring Threshold" />
1135   </Event>
1136 
1137   <Event name="ZOldGarbageCollection" category="Java Virtual Machine, GC, Collector" label="ZGC Old Garbage Collection" description="Extra information specific to ZGC Old Garbage Collections" thread="true">
1138     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId" />
1139   </Event>
1140 
1141   <Event name="ZAllocationStall" category="Java Virtual Machine, GC, Detailed" label="ZGC Allocation Stall" description="Time spent waiting for memory to become available" thread="true" stackTrace="true">
1142     <Field type="ZPageTypeType" name="type" label="Type" />
1143     <Field type="ulong" contentType="bytes" name="size" label="Size" />
1144   </Event>
1145 
1146   <Event name="ZPageAllocation" category="Java Virtual Machine, GC, Detailed" label="ZGC Page Allocation" description="Allocation of a ZPage" thread="true" stackTrace="true">
1147      <Field type="ZPageTypeType" name="type" label="Type" />
1148      <Field type="ulong" contentType="bytes" name="size" label="Size" />
1149      <Field type="ulong" contentType="bytes" name="flushed" label="Flushed" />
1150      <Field type="ulong" contentType="bytes" name="committed" label="Committed" />
1151      <Field type="uint" name="segments" label="Segments" />
1152      <Field type="boolean" name="nonBlocking" label="Non-blocking" />
1153   </Event>
1154 
1155   <Event name="ZRelocationSet" category="Java Virtual Machine, GC, Detailed" label="ZGC Relocation Set" thread="true">
1156     <Field type="ulong" contentType="bytes" name="total" label="Total" />
1157     <Field type="ulong" contentType="bytes" name="empty" label="Empty" />
1158     <Field type="ulong" contentType="bytes" name="relocate" label="Relocate" />
1159   </Event>
1160 
1161   <Event name="ZRelocationSetGroup" category="Java Virtual Machine, GC, Detailed" label="ZGC Relocation Set Group" thread="true">
1162     <Field type="ZPageTypeType" name="type" label="Type" />
1163     <Field type="ulong" name="candidatePages" label="Candidate Pages" />
1164     <Field type="ulong" contentType="bytes" name="total" label="Total" />
1165     <Field type="ulong" contentType="bytes" name="empty" label="Empty" />
1166     <Field type="ulong" name="selectedPages" label="Selected Pages" />
1167     <Field type="ulong" contentType="bytes" name="relocate" label="Relocate" />
1168   </Event>
1169 
1170   <Event name="ZStatisticsCounter" category="Java Virtual Machine, GC, Detailed" label="ZGC Statistics Counter" thread="true" experimental="true">
1171     <Field type="ZStatisticsCounterType" name="id" label="Id" />
1172     <Field type="ulong" name="increment" label="Increment" />
1173     <Field type="ulong" name="value" label="Value" />
1174   </Event>
1175 
1176   <Event name="ZStatisticsSampler" category="Java Virtual Machine, GC, Detailed" label="ZGC Statistics Sampler" thread="true" experimental="true">
1177     <Field type="ZStatisticsSamplerType" name="id" label="Id" />
1178     <Field type="ulong" name="value" label="Value" />
1179   </Event>
1180 
1181   <Event name="ZThreadPhase" category="Java Virtual Machine, GC, Detailed" label="ZGC Thread Phase" thread="true" experimental="true">
1182     <Field type="uint" name="gcId" label="GC Identifier" relation="GcId"/>
1183     <Field type="string" name="name" label="Name" />
1184   </Event>
1185 
1186   <Event name="ZUncommit" category="Java Virtual Machine, GC, Detailed" label="ZGC Uncommit" description="Uncommitting of memory" thread="true">
1187     <Field type="ulong" contentType="bytes" name="uncommitted" label="Uncommitted" />
1188   </Event>
1189 
1190   <Event name="ZUnmap" category="Java Virtual Machine, GC, Detailed" label="ZGC Unmap" description="Unmapping of memory" thread="true">
1191     <Field type="ulong" contentType="bytes" name="unmapped" label="Unmapped" />
1192   </Event>
1193 
1194   <Event name="ShenandoahHeapRegionStateChange" category="Java Virtual Machine, GC, Detailed" label="Shenandoah Heap Region State Change" description="Information about a Shenandoah heap region state change"
1195     startTime="false">
1196     <Field type="uint" name="index" label="Index" />
1197     <Field type="ShenandoahHeapRegionState" name="from" label="From" />
1198     <Field type="ShenandoahHeapRegionState" name="to" label="To" />
1199     <Field type="ulong" contentType="address" name="start" label="Start" />
1200     <Field type="ulong" contentType="bytes" name="used" label="Used" />
1201   </Event>
1202 
1203   <Event name="ShenandoahHeapRegionInformation" category="Java Virtual Machine, GC, Detailed" label="Shenandoah Heap Region Information" description="Information about a specific heap region in the Shenandoah GC"
1204     period="everyChunk">
1205     <Field type="uint" name="index" label="Index" />
1206     <Field type="ShenandoahHeapRegionState" name="state" label="State" />
1207     <Field type="ulong" contentType="address" name="start" label="Start" />
1208     <Field type="ulong" contentType="bytes" name="used" label="Used" />
1209   </Event>
1210 
1211   <Type name="ShenandoahHeapRegionState" label="Shenandoah Heap Region State">
1212     <Field type="string" name="state" label="State" />
1213   </Type>
1214 
1215   <Event name="Flush" category="Flight Recorder" label="Flush" thread="false" experimental="true">
1216     <Field type="ulong" name="flushId" label="Flush Identifier" relation="FlushId" />
1217     <Field type="ulong" name="elements" label="Elements Written" />
1218     <Field type="ulong" contentType="bytes" name="size" label="Size Written" />
1219   </Event>
1220 
1221   <Event name="HeapDump" category="Java Virtual Machine, Diagnostics" label="Heap Dump" description="Information about a successfully written Java heap dump"
1222     stackTrace="true" thread="true">
1223     <Field type="string" name="destination" label="Destination Path of the Dump" />
1224     <Field type="long" name="size" label="Size" />
1225     <Field type="boolean" name="gcBeforeDump" label="GC Before Dump" />
1226     <Field type="boolean" name="onOutOfMemoryError" label="Heap Dump on Out of Memory Error" />
1227     <Field type="boolean" name="overwrite" label="Overwrite" description="Heap dump overwrites previous file location if it exists" />
1228     <Field type="int" name="compression" label="Compression Level" description="Compression level of the dump, if larger than 0 we use gzip compression with this level" />
1229   </Event>
1230 
1231   <Event name="GCLocker" category="Java Virtual Machine, GC, Detailed" label="GC Locker" startTime="true" thread="true" stackTrace="true">
1232     <Field type="uint" name="lockCount" label="Lock Count" description="The number of Java threads in a critical section when the GC locker is started" />
1233     <Field type="uint" name="stallCount" label="Stall Count" description="The number of Java threads stalled by the GC locker" />
1234   </Event>
1235 
1236   <Event name="FinalizerStatistics" category="Java Application, Statistics" label="Finalizer Statistics" description="Per class statistics about finalizers" thread="false" startTime="false" period="endChunk">
1237     <Field type="Class" name="finalizableClass" label="Class Overriding Finalize" />
1238     <Field type="Symbol" name="codeSource" label="Code Source" description="URL from where the class was loaded" />
1239     <Field type="ulong" name="objects" label="Finalizable Objects on Heap" description="Number of objects on heap that can be finalized" />
1240     <Field type="ulong" name="totalFinalizersRun" label="Finalizers Run" description="Total number of finalizers run since JVM start" />
1241   </Event>
1242 
1243   <Event name="JavaAgent" category="Java Virtual Machine, Diagnostics" label="Java Agent" description="A Java programming language agent making use of the java.lang.instrument package for instrumenting programs running on the JVM"
1244     thread="false" startTime="false" period="endChunk" stackTrace="false">
1245     <Field type="string" name="name" label="Name" />
1246     <Field type="string" name="options" label="Options" />
1247     <Field type="boolean" name="dynamic" label="Dynamic" description="If the agent attached to the JVM dynamically during runtime, i.e. not at startup" />
1248     <Field type="Ticks" name="initializationTime" label="Initialization Time" description="The time the JVM initialized the agent" />
1249     <Field type="Tickspan" name="initializationDuration" label="Initialization Duration" description="The duration of executing the initialization method, either premain or agentmain" />
1250   </Event>
1251 
1252   <Event name="NativeAgent" category="Java Virtual Machine, Diagnostics" label="Native Agent" description="A native programming language agent making use of the JVMTI interface used by development, profiling and monitoring tools"
1253     thread="false" startTime="false" period="endChunk" stackTrace="false">
1254     <Field type="string" name="name" label="Name" />
1255     <Field type="string" name="options" label="Options" />
1256     <Field type="boolean" name="dynamic" label="Dynamic" description="If the library attached to the JVM dynamically during runtime, i.e. not at startup" />
1257     <Field type="Ticks" name="initializationTime" label="Initialization Time" description="The time the JVM initialized the agent" />
1258     <Field type="Tickspan" name="initializationDuration" label="Initialization Duration" description="The duration of executing the JVMTI VMInit event callback. If no VMInit callback is specified, the duration is 0. For a dynamically loaded agent, it is the duration of executing the call to Agent_OnAttach." />
1259     <Field type="string" name="path" label="Path" description="The path of the library" />
1260   </Event>
1261 
1262   <Event name="DeprecatedInvocation" description= "A unique invocation of a method that is annotated with @Deprecated. Packages and modules that are deprecated are ignored. At most 10 000 invocation sites and only the first invocation from a class is guaranteed to be included."
1263    category="Java Application, Statistics" label="Deprecated Method Invocation" thread="false" stackTrace="true" startTime="false" level="forRemoval,all">
1264     <Field type="Method" name="method" label="Deprecated Method" />
1265     <Field type="Ticks" name="invocationTime" label="Invocation Time" description="The time the deprecated method was invoked for the first time" />
1266     <Field type="boolean" name="forRemoval" label="For Removal" />
1267   </Event>
1268 
1269   <Type name="DeoptimizationReason" label="Deoptimization Reason">
1270     <Field type="string" name="reason" label="Reason" />
1271   </Type>
1272 
1273   <Type name="DeoptimizationAction" label="Deoptimization Action">
1274     <Field type="string" name="action" label="Action" />
1275   </Type>
1276 
1277   <Type name="Bytecode" label="Bytecode Instruction">
1278     <Field type="string" name="bytecode" label="Instruction" />
1279   </Type>
1280 
1281   <Type name="CompilerType" label="Compiler Type">
1282     <Field type="string" name="compiler" label="Compiler" />
1283   </Type>
1284 
1285   <Type name="ZPageTypeType" label="Z Page Type">
1286     <Field type="string" name="type" label="Type" />
1287   </Type>
1288 
1289   <Type name="ZStatisticsCounterType" label="Z Statistics Counter">
1290     <Field type="string" name="counter" label="Counter" />
1291   </Type>
1292 
1293   <Type name="ZStatisticsSamplerType" label="Z Statistics Sampler">
1294     <Field type="string" name="sampler" label="Sampler" />
1295   </Type>
1296 
1297   <Type name="NetworkInterfaceName" label="Network Interface">
1298     <Field type="string" name="networkInterface" label="Network Interface" description="Network Interface Name" />
1299   </Type>
1300 
1301   <Type name="Thread" label="Thread">
1302     <Field type="string" name="osName" label="OS Thread Name" />
1303     <Field type="long" name="osThreadId" label="OS Thread Id" />
1304     <Field type="string" name="javaName" label="Java Thread Name" />
1305     <Field type="long" name="javaThreadId" label="Java Thread Id" />
1306     <Field type="ThreadGroup" name="group" label="Java Thread Group" />
1307     <Field type="boolean" name="virtual" label="Virtual Thread" />
1308   </Type>
1309 
1310   <Type name="ThreadGroup" label="Thread Group">
1311     <Field type="ThreadGroup" name="parent" label="Parent" />
1312     <Field type="string" name="name" label="Name" />
1313   </Type>
1314 
1315   <Type name="Class" label="Java Class">
1316     <Field type="ClassLoader" name="classLoader" label="Class Loader" />
1317     <Field type="Symbol" name="name" label="Name" />
1318     <Field type="Package" name="package" label="Package" />
1319     <Field type="int" name="modifiers" label="Access Modifiers" />
1320     <Field type="boolean" name="hidden" label="Hidden" />
1321   </Type>
1322 
1323   <Type name="ClassLoader" label="Java Class Loader">
1324     <Field type="Class" name="type" label="Type" />
1325     <Field type="Symbol" name="name" label="Name" />
1326   </Type>
1327 
1328   <Type name="Method" label="Java Method">
1329     <Field type="Class" name="type" label="Type" />
1330     <Field type="Symbol" name="name" label="Name" />
1331     <Field type="Symbol" name="descriptor" label="Descriptor" />
1332     <Field type="int" name="modifiers" label="Access Modifiers" />
1333     <Field type="boolean" name="hidden" label="Hidden" />
1334   </Type>
1335 
1336   <Type name="Symbol" label="Symbol">
1337     <Field type="string" name="string" label="String" />
1338   </Type>
1339 
1340   <Type name="ThreadState" label="Java Thread State">
1341     <Field type="string" name="name" label="Name" />
1342   </Type>
1343 
1344   <Type name="GCName" label="GC Name">
1345     <Field type="string" name="name" label="Name" />
1346   </Type>
1347 
1348   <Type name="GCCause" label="GC Cause">
1349     <Field type="string" name="cause" label="Cause" />
1350   </Type>
1351 
1352   <Type name="GCWhen" label="GC When">
1353     <Field type="string" name="when" label="When" />
1354   </Type>
1355 
1356   <Type name="G1HeapRegionType" label="G1 Heap Region Type">
1357     <Field type="string" name="type" label="Type" />
1358   </Type>
1359 
1360   <Type name="G1YCType" label="G1 YC Type">
1361     <Field type="string" name="type" label="Type" />
1362   </Type>
1363 
1364   <Type name="GCThresholdUpdater" label="GC Threshold Updater">
1365     <Field type="string" name="updater" label="Updater" />
1366   </Type>
1367 
1368   <Type name="ReferenceType" label="Reference Type">
1369     <Field type="string" name="type" label="Type" />
1370   </Type>
1371 
1372   <Type name="MetadataType" label="Metadata Type">
1373     <Field type="string" name="type" label="Type" />
1374   </Type>
1375 
1376   <Type name="MetaspaceObjectType" label="Metaspace Object Type">
1377     <Field type="string" name="type" label="Type" />
1378   </Type>
1379 
1380   <Type name="NarrowOopMode" label="Narrow Oop Mode">
1381     <Field type="string" name="mode" label="Mode" />
1382   </Type>
1383 
1384   <Type name="VMOperationType" label="VM Operation Type">
1385     <Field type="string" name="type" label="Type" />
1386   </Type>
1387 
1388   <Type name="CompilerPhaseType" label="Compiler Phase Type">
1389     <Field type="string" name="phase" label="Phase" />
1390   </Type>
1391 
1392   <Type name="FlagValueOrigin" label="Flag Value Origin">
1393     <Field type="string" name="origin" label="Origin" />
1394   </Type>
1395 
1396   <Type name="CodeBlobType" label="Code Blob Type">
1397     <Field type="string" name="type" label="Type" />
1398   </Type>
1399 
1400   <Type name="InflateCause" label="Inflation Cause">
1401     <Field type="string" name="cause" label="Cause" />
1402   </Type>
1403 
1404   <Type name="Module" label="Module">
1405     <Field type="Symbol" name="name" label="Name" />
1406     <Field type="Symbol" name="version" label="Version" />
1407     <Field type="Symbol" name="location" label="Location" />
1408     <Field type="ClassLoader" name="classLoader" label="Class Loader" />
1409   </Type>
1410 
1411   <Type name="Package" label="Package">
1412     <Field type="Symbol" name="name" label="Name" />
1413     <Field type="Module" name="module" label="Module" />
1414     <Field type="boolean" name="exported" label="Exported" />
1415   </Type>
1416 
1417   <Type name="StackTrace" label="Stacktrace">
1418     <Field type="boolean" name="truncated" label="Truncated" />
1419     <Field type="StackFrame" array="true" struct="true" name="frames" label="Stack Frames" />
1420   </Type>
1421 
1422   <Type name="FrameType" label="Frame type">
1423     <Field type="string" name="description" label="Description" />
1424   </Type>
1425 
1426   <Type name="OldObjectRootSystem" label="GC Root System">
1427     <Field type="string" name="system" label="System" />
1428   </Type>
1429 
1430   <Type name="OldObjectRootType" label="GC Root Type">
1431     <Field type="string" name="type" label="Type" />
1432   </Type>
1433 
1434   <Type name="OldObjectGcRoot" label="GC Root">
1435     <Field type="string" name="description" label="Root Description" description="Root information" />
1436     <Field type="OldObjectRootSystem" name="system" label="System" description="The subsystem of origin for the root" />
1437     <Field type="OldObjectRootType" name="type" label="Type" description="The root type" />
1438   </Type>
1439 
1440   <Type name="OldObjectArray" label="Old Object Array">
1441     <Field type="int" name="size" label="Array Size" description="Size of array" />
1442     <Field type="int" name="index" label="Index" description="Index in the array" />
1443   </Type>
1444 
1445   <Type name="OldObjectField" label="Old Object Field">
1446     <Field type="string" name="name" label="Field" description="Name of field" />
1447     <Field type="short" name="modifiers" label="Field Modifiers" description="Field modifiers" />
1448   </Type>
1449 
1450   <Type name="OldObject" label="Old Object">
1451     <Field type="ulong" contentType="address" name="address" label="Memory Address" />
1452     <Field type="Class" name="type" label="Java Class" />
1453     <Field type="string" name="description" label="Object Description" description="Object description" />
1454     <Field type="Reference" name="referrer" label="Referrer Object" description="Object referencing this object" />
1455   </Type>
1456 
1457   <Type name="Reference" label="Reference">
1458     <Field type="OldObjectArray" name="array" label="Array Information" description="Array or null if it is not an array" />
1459     <Field type="OldObjectField" name="field" label="Field Information" description="Field or null if it is an array" />
1460     <Field type="OldObject" name="object" label="Object" description="Object holder for this reference" />
1461     <Field type="int" name="skip" label="Skip Value" description="The object is this many hops away" />
1462   </Type>
1463 
1464   <Type name="StackFrame">
1465     <Field type="Method" name="method" label="Java Method" />
1466     <Field type="int" name="lineNumber" label="Line Number" />
1467     <Field type="int" name="bytecodeIndex" label="Bytecode Index" />
1468     <Field type="FrameType" name="type" label="Frame Type" />
1469   </Type>
1470 
1471   <Type name="ChunkHeader" label="Chunk Header">
1472     <Field type="byte" array="true" name="payload" label="Payload" />
1473   </Type>
1474 
1475   <Type name="NMTType" label="Native Memory Tracking Type">
1476     <Field type="string" name="name" label="Name" />
1477   </Type>
1478 
1479   <Relation name="JavaMonitorAddress"/>
1480   <Relation name="SafepointId"/>
1481   <Relation name="GcId"/>
1482   <Relation name="CompileId" />
1483   <Relation name="SweepId"/>
1484   <Relation name="FlushId"/>
1485   <Relation name="ClassRedefinitionId"/>
1486 
1487   <XmlType name="Package" parameterType="const PackageEntry*" fieldType="const PackageEntry*"/>
1488   <XmlType name="Class" javaType="java.lang.Class" parameterType="const Klass*" fieldType="const Klass*"/>
1489   <XmlType name="Module"  parameterType="const ModuleEntry*" fieldType="const ModuleEntry*"/>
1490   <XmlType name="ClassLoader" parameterType="const ClassLoaderData*" fieldType="const ClassLoaderData*"/>
1491   <XmlType name="Method" parameterType="const Method*" fieldType="const Method*"/>
1492   <XmlType name="Thread" javaType="java.lang.Thread" parameterType="u8" fieldType="u8"/>
1493   <XmlType name="Tickspan" contentType="tickspan" unsigned="true" javaType="long" parameterType="const Tickspan&amp;" fieldType="Tickspan"/>
1494   <XmlType name="Ticks" contentType="tickstamp" unsigned="true" javaType="long" parameterType="const Ticks&amp;" fieldType="Ticks"/>
1495   <XmlType name="ulong" javaType="long" unsigned="true" parameterType="u8" fieldType="u8"/>
1496   <XmlType name="uint" javaType="int" unsigned="true" parameterType="unsigned" fieldType="unsigned"/>
1497   <XmlType name="ushort" javaType="short" unsigned="true" parameterType="u2" fieldType="u2"/>
1498   <XmlType name="ubyte" javaType="byte" unsigned="true" parameterType="u1" fieldType="u1"/>
1499   <XmlType name="long" javaType="long" parameterType="s8" fieldType="s8"/>
1500   <XmlType name="int" javaType="int" parameterType="s4" fieldType="s4"/>
1501   <XmlType name="short" javaType="short" parameterType="s2" fieldType="s2"/>
1502   <XmlType name="byte" javaType="byte"  parameterType="s1" fieldType="s1"/>
1503   <XmlType name="double" javaType="double" parameterType="double" fieldType="double"/>
1504   <XmlType name="float" javaType="float"  parameterType="float" fieldType="float"/>
1505   <XmlType name="boolean" javaType="boolean" parameterType="bool" fieldType="bool"/>
1506   <XmlType name="char" javaType="char" parameterType="char" fieldType="char"/>
1507   <XmlType name="string" javaType="java.lang.String" parameterType="const char*" fieldType="const char*"/>
1508   <XmlType name="StackTrace" javaType="jdk.types.StackTrace" parameterType="u8" fieldType="u8"/>
1509 
1510   <XmlContentType name="bytes" annotation="jdk.jfr.DataAmount(BYTES)" />
1511   <XmlContentType name="tickstamp" annotation="jdk.jfr.Timestamp(TICKS)" />
1512   <XmlContentType name="epochmillis" annotation="jdk.jfr.Timestamp(MILLISECONDS_SINCE_EPOCH)" />
1513   <XmlContentType name="tickspan" annotation="jdk.jfr.Timespan(TICKS)" />
1514   <XmlContentType name="address" annotation="jdk.jfr.MemoryAddress" />
1515   <XmlContentType name="percentage" annotation="jdk.jfr.Percentage" />
1516   <XmlContentType name="millis" annotation="jdk.jfr.Timespan(MILLISECONDS)" />
1517   <XmlContentType name="nanos" annotation="jdk.jfr.Timespan(NANOSECONDS)" />
1518   <XmlContentType name="hertz" annotation="jdk.jfr.Frequency" />
1519   <XmlContentType name="bytes-per-second" annotation="jdk.jfr.DataAmount(BYTES), jdk.jfr.Frequency" />
1520   <XmlContentType name="bits-per-second" annotation="jdk.jfr.DataAmount(BITS), jdk.jfr.Frequency" />
1521 
1522 </Metadata>