2017-06-20 8 views
2

Elastic BeanstalkサーバーからJVMヒープ・ダンプを取得する必要がありますが、サーバーにはjcmdまたはjmapがありません。 Amazonは、JDKをネイティブにインストールしません。ここではインストールされているものです:Elastic Beanstalk JVMヒープを検査する最良の方法

[[email protected] ~]$ sudo yum list installed|grep jdk 
java-1.7.0-openjdk.x86_64    1:1.7.0.111-2.6.7.2.68.amzn1 @amzn-updates 
java-1.8.0-openjdk.x86_64    1:1.8.0.101-3.b13.24.amzn1 @amzn-updates 
java-1.8.0-openjdk-headless.x86_64 1:1.8.0.101-3.b13.24.amzn1 @amzn-updates 

Elastic BeanstalkでのJVMからヒープダンプを取得するための最良の方法は何ですか?私はElastic Beanstalkでで働いたことがありませんが、私は次のことをチェックすることをお勧めすることができます:

+0

をあなたはEBS上のJVMからヒープ・ダンプを取得するために管理していましたか? – SylvesterAbreu

答えて

1

この目的のために、「/ heapdump」のエンドポイントを持っている春のアクチュエータをプラグインすることも可能正しいパックkage:

sudo yum install java-1.8.0-openjdk-devel 

これはベースライン、tomcatバージョンなどによって異なります。ヒープ・ダンプを作成する場合

、Tomcatのユーザーを使用します。

sudo -u tomcat jmap -dump:live,file=/tmp/test.hprof <pid> 
+0

これはうまくいった!ありがとうございました。 –

0

Disclamer

は、ヒープは、プログラムダンプ取って考えてみて、私は、Javaアプリケーション自体の中から意味。それを行うの多くの方法があります。

  • 経由JMX - チャンスは

  • (これを行うためのチュートリアルが Hereあります)あなたはHotSpotDiagnostic Beanを見つけると、ヒープ・ダンプ操作を呼び出すことができるようになりますことをしています
  • アプリケーションが新しいですし、春ブーツを持っている場合は、おそらくそのちょうど私はあなたがインストールすることで、jmapのをインストールすることができます発見した

関連する問題