RFR: 6988: Initial implementation of JFR binary format writer

Jaroslav Bachorik jbachorik at openjdk.java.net
Fri Nov 20 18:50:20 UTC 2020


This is an initial implementation of JFR binary format writer in Java.
The writer can write valid JFR files according to what is expected by the JMC JFR format reader.
The writer is not complete in terms of performance and event settings support but in spite of that it is fairly usable.

The typical flow is:

1. Obtain a new instance of Recording
 java
Recording r = new Recording()
2. Register custom types for that recording
 java
r.registerType(name, structure)
3. Get a new Chunk instance
 java
Chunk c = r.newChunk()
4. Write event values
 java
c.writeEvent(eventValue)
5. Finish the chunk and get the binary data
 java
byte[] data = c.finish()


For more complex usage check [ChunkComplexTest.java](https://github.com/openjdk/jmc/pull/84/files#diff-c4c8e65a0fa563655c55be91602af6ab).

-------------

Commit messages:
 - 6988: Java implementation of the JFR binary format writer

Changes: https://git.openjdk.java.net/jmc/pull/84/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jmc&pr=84&range=00
  Issue: https://bugs.openjdk.java.net/browse/JMC-6988
  Stats: 7586 lines in 69 files changed: 7586 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jmc/pull/84.diff
  Fetch: git fetch https://git.openjdk.java.net/jmc pull/84/head:pull/84

PR: https://git.openjdk.java.net/jmc/pull/84


More information about the jmc-dev mailing list