When monitoring java process running with ZGC, jstat does not show actual data. It looks like zgc updates data for jstat only after GC is run. Steps to reproduce:
1. run Notepad.jar demo application with java -XX:+UseZGC demo/jfc/Notepad/Notepad.jar
2. attach JConsole to Notepad process
3. run jstat with jstat -gcold <Notepad_PID> 5s
jstat reports all zero-s, while jconsole shows that heap usage is slowly rising. jstat data are updated after GC is run and than they remain the same. See jstat output below:
$ jstat -gcold 1666251 5s
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
1. run Notepad.jar demo application with java -XX:+UseZGC demo/jfc/Notepad/Notepad.jar
2. attach JConsole to Notepad process
3. run jstat with jstat -gcold <Notepad_PID> 5s
jstat reports all zero-s, while jconsole shows that heap usage is slowly rising. jstat data are updated after GC is run and than they remain the same. See jstat output below:
$ jstat -gcold 1666251 5s
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
0.0 0.0 0.0 0.0 8192.0 0.0 - - - 0 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000
18624.0 18277.2 2240.0 2041.9 206848.0 94208.0 - - - 3 0.000 0.000