JDK-8193710 : jcmd -l and jps commands do not list Java processes running in Docker containers
  • Type: Bug
  • Component: core-svc
  • Sub-Component: tools
  • Affected Version: 8u144,9,10
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2017-12-18
  • Updated: 2021-10-13
  • Resolved: 2018-01-22
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11
11 b01Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Sub Tasks
JDK-8196447 :  
Description
Issue JDK-8179498 resolved the problem of connecting to a Java process running inside of Docker containers but an issue still remains when trying to run jcmd -l to list all Java processes running on a Linux system.

The problem stems from the fact that jcmd -l looks in /tmp to locate running java processes.  Since /tmp inside of a container is not directly visible to the host, these processes are not located.

A potential solution is to look in /proc/*/root/tmp for the hsperf* files.

Comments
URL: http://hg.openjdk.java.net/jdk/jdk/rev/099f18e10557 User: jwilhelm Date: 2018-02-09 12:58:21 +0000
09-02-2018

URL: http://hg.openjdk.java.net/jdk/hs/rev/099f18e10557 User: bobv Date: 2018-01-22 21:04:01 +0000
22-01-2018

core-svc/java.lang.management is probably the wrong compent/subcomponent for this bug. I recommend moving it to core-svc/tools since this bug is about 'jcmd -l' and 'jps'.
11-01-2018