我的应用程序在docker中运行核心操作系统和Ubuntu。如何从这些系统收集线程转储以分析性能问题
我尝试了下面的命令,但没有奏效 杀-3 jstack 码头工人 appsnap
答案 0 :(得分:1)
我有一个java
应用程序在docker内部运行,我使用:docker exec -it <containerName> jstack > someFile.txt
请确保定期收集以更好地理解。
Aslo,您可以使用yourkit
之类的应用程序为您完成
答案 1 :(得分:0)
有几个threaddump shell脚本可以帮助你https://access.redhat.com/solutions/18178(在附件下面的底部)。
基本用法:
sh ./threaddump_linux.sh JAVA_PID
您必须将其添加到Dockerfile或执行容器并手动安装和运行它。
使用它们的说明(以及其他线程转储技术)在该页面上