$ jcmd -l
418 sun.tools.jcmd.JCmd -l
$ jstat -gcutil -t 10 250ms 1
10 not found
Run Code Online (Sandbox Code Playgroud)
我知道jdk中有关将jstat作为root连接到以不同用户身份运行的进程的错误.
这里,这个docker容器有一个用户root,从ps命令可以看出,cassandra在root下运行.
$ whoami
root
Run Code Online (Sandbox Code Playgroud)
我试图做以下事情: $ sudo -u root jcmd -l
任何帮助表示赞赏.
Docker容器是debian:jessie运行java版本:openjdk版本"1.8.0_66-internal"
这是ps -ef的输出:
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 17:40 ? 00:00:00 /bin/bash /run.sh
root 10 1 11 17:40 ? 00:02:25 java -ea -javaagent:/usr/share/c
root 375 0 0 17:49 ? 00:00:00 bash
root 451 375 0 18:00 ? 00:00:00 ps -ef
Run Code Online (Sandbox Code Playgroud)
旁白:jstack成功转储了线程的堆栈跟踪.