RFR: 8196743: jstatd doesn't see new Java processes inside Docker container

Kevin Walls kevinw at openjdk.java.net
Thu May 6 20:48:00 UTC 2021


This is a merge request to fix the issue where a running jstatd does not see JVMs in docker containers started since the jstatd itself started.

jstatd was using the set of temp directories gathered on startup to scan for VMs, by reading their perfdata file.  That includes existing running VMs in docker instances using tmp dirs such as /proc/PID/root/tmp/.  But it needs to re-evaluate that set of temp dirs continually to see new VMs in docker containers.  Rescanning also means it "forgets" about tmp dirs which have disappeared, for containers that have shutdown, and it will now not be scanning those directories forever.

Have been testing this manually, watching jps connecting to jstatd and show newly created JVMs in docker containers come and go.  Running existing tests OK so far.

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

Commit messages:
 - 8196743: jstatd doesn't see new Java processes inside Docker container

Changes: https://git.openjdk.java.net/jdk/pull/3908/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3908&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8196743
  Stats: 10 lines in 1 file changed: 5 ins; 3 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3908.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3908/head:pull/3908

PR: https://git.openjdk.java.net/jdk/pull/3908


More information about the serviceability-dev mailing list