首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker IBM SDK-8镜像-获取线程/内存转储

Docker IBM SDK-8镜像-获取线程/内存转储
EN

Stack Overflow用户
提问于 2017-05-26 06:47:45
回答 1查看 289关注 0票数 0

我使用的是ibmcom/ibmjava:8-sdk镜像。如何获得线程转储和内存转储?我使用-Xdump选项启动了jvm。但是,当我给kill -3 pid时,没有消息表明转储已创建。

EN

回答 1

Stack Overflow用户

发布于 2017-08-07 20:24:15

我假设您正在向分离的容器发出kill命令。如果是这样,那么命令"docker logs“将有助于获取详细信息。

我就是这么尝试的,

1.启动容器(分离状态):

代码语言:javascript
复制
docker run --rm --detach --workdir /dockapp --volume /Users/parselva/docker-test:/dockapp ibmjava:latest java -Xdump:java:events=vmstart ThreadSleep

2.读取容器内java进程的pid:

代码语言:javascript
复制
docker exec 97b37120ea7b ps -eaf | grep ThreadSleep

root         1     0  0 11:03 ?        00:00:00 java -Xdump:java:events=vmstart ThreadSleep

进程发出信号:

代码语言:javascript
复制
docker exec 97b37120ea7b kill -3 1

docker logs 4.使用命令找到生成的日志文件的位置:

代码语言:javascript
复制
docker logs 97b37120ea7b
JVMDUMP039I Processing dump event "user", detail "" at 2017/08/07 11:10:07 - please wait.
JVMDUMP032I JVM requested Java dump using '/dockapp/javacore.20170807.111007.1.0004.txt' in response to an event
JVMDUMP010I Java dump written to /dockapp/javacore.20170807.111007.1.0004.txt
JVMDUMP013I Processed dump event "user", detail "".
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44190941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档