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

Yasumasa Suenaga ysuenaga at openjdk.java.net
Fri May 7 09:18:53 UTC 2021


On Fri, 7 May 2021 09:15:14 GMT, Kevin Walls <kevinw at openjdk.org> wrote:

>> 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.
>
> Kevin Walls has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove tmpdirs member, call getTempDirectories() directly as needed.

Looks good! Thank you for fixing!

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

Marked as reviewed by ysuenaga (Reviewer).

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


More information about the serviceability-dev mailing list