Comments (2)
Hi @altdelnow
The issue is not generally the OpenJDK11 logs, but G1 logs in unified GC logging format. The green rectangles show the information that currently is used by GCViewer for G1 logs:
The difficult part is calculation of the regions:
- eden + survivor -> young space
- old -> tenured space
- humongous -> don't know where to count them, they don't fit into the G1 region model
- metaspace -> no regions, just plain old size.
GCViewer tries to multiply the number of regions (in the example: eden 0 + survivor 1 = 1 young region; 9 old regions) with the region size logged in the beginning of a log to get a rough size of young and tenured space. Humongous regions don't seem to be in the young nor the tenured category, I never knew where to count them. And I am also not sure, if the size of a humongous region is the same as an eden / survivor / old region.
Your trace information would probably contain all the information necessary to show more information about the regions, but it is currently ignored. In this class you see the included and excluded information by the parser: https://github.com/chewiebug/GCViewer/blob/develop/src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderUnifiedJvmLogging.java#L170
The best you can get with G1 in unified GC logging format looks like this (I have turned off some information in the chart to better see the young plot):
You see the young space size, for tenured / old there is probably still a bug around in the parser.
The reason for this little improvement is the presence of the following line in the gc log:
For a openJDK 11 serial gc log, you'll see something like this:
For OpenJDK 11+ ZGC the situation is even worse than with G1. There the parser definitely needs an update.
from gcviewer.
@chewiebug Would it make sense to adopt gctoolkit (previously jClarity Censum) for the parsing? I know that won't fix the display issues you discussed, but maybe it'd free up time updating the parser for the constantly changing format?
from gcviewer.
Related Issues (20)
- Total promotion can get negative HOT 8
- 时间区间缺少png自动选择功能 HOT 1
- Error parsing openjdk 11 logs HOT 1
- OpenJDK - additional tags fail parsing HOT 1
- SEVERE [DataReaderFactory]: Failed to recognize file format. HOT 5
- macOS - Application hangs when quitting
- Error when open file HOT 2
- Parse problem for Java 11 Unified GC logging format HOT 1
- GCViewerForQianKunZhao HOT 1
- What do you think of changing the license to Apache 2.0? HOT 3
- Failed to parse gc event "Merge Heap Roots" on Adopt OpenJDK 17 HOT 1
- The reported freed memory is incorrect
- Java 17 ready version ? HOT 1
- The environment variable JAVA_HOME is not correctly set. HOT 1
- Wrong graph display when open series HOT 4
- Parse xml G1GC on openjdk9 error
- Interactive Action of mouse movement on chart HOT 2
- Support graphical display of metaspace? HOT 1
- Release 1.37
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gcviewer.