我们从运行在aws弹性beantalk中托管的tomcat容器内的spring boot应用程序中获取OutOfMemoryError。那么如何从弹性beantalk中获取堆转储?
https://stackoverflow.com/a/48110954/7024630 上面的答案提出了一种通过安装第三方依赖项来获取堆转储的方法,是否有任何方法可以直接从AWS Elastic Beanstalk获得?
答案 0 :(得分:0)
尝试这个Best method for inspecting Elastic Beanstalk JVM heap,它对我有用。
就我而言,我使用的是Java 7:
$ which java
$ ls -lh /usr/bin/java
$ yum install java-1.7.0-openjdk-devel
$ yum --enablerepo='*-debug*' install java-1.7.0-openjdk-debuginfo
$ ps aux | grep tomcat
$ sudo -u tomcat jmap -dump:live,file=/tmp/test.hprof 12768
$ tar -czvf test.hprof.tar.gz /tmp/test.hprof
$ scp test.hprof.tar.gz xxxxxxxxxxxxx@x.y.z.w:~/