【Tomcat】【JMX】Tomcat を JConsoleで、パフォーマンス監視する

■ JConsoleについて

 * 以下の関連記事を参照のこと。
https://blogs.yahoo.co.jp/dk521123/37307183.html

■ 設定手順

 * はじめの設定として、サーバ側とクライアント側を同じにする

設定環境

 * OS : Windows10
 * Java : JDK1.8.0_111
 * Tomcat : tomcat-9.0.0.M26

前提条件

 * JDK/Tomcat をインストールされていること

詳細手順

[1] サーバ側の設定
[1-1] 【Tomvat】/bin/setenv.bat (Linuxならsetenv.sh) を作成し、以下の内容を保存

【Windows の場合】
~~~~~
set CATALINA_OPTS=-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=localhost -Dcom.sun.management.jmxremote.port=10080 -Dcom.sun.management.jmxremote.authenticate=false
~~~~~

【Linux の場合】
#!/bin/sh

CATALINA_OPTS=-Dcom.sun.management.jmxremote=true ...
~~~~~

[1-2] Tomcat を開始する

 => 【Tomvat】/logs/catalina.yyyy-MM-dd.log を参照すると、以下のように表示。
~~~~~
情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote=true
情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.ssl=false
情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.rmi.server.hostname=localhost
情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.port=10080
情報 [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcom.sun.management.jmxremote.authenticate=false
~~~~~
[2] クライアント側の設定
[2-1] 【JDK】/bin/jconsole.exe をダブルクリックし、JConsole を起動する
[2-2] 「リモート・プロセス」を選択し、
       テキスト欄に「【ホスト名】:【ポート番号】(今回の場合は「localhost:10080」)」を入力し、
       「接続」ボタン押下(「保護されていない接続」ボタン押下)
 => メモリやスレッドなどパフォーマンス情報が表示されるはず


関連記事

JMX】 JConsole

https://blogs.yahoo.co.jp/dk521123/37307183.html

AWS】【JMXAWS/EC2上のJConsoleを、GUIで遠隔起動するには...

https://blogs.yahoo.co.jp/dk521123/37330147.html

TomcatTomcat管理ツール Probe

https://blogs.yahoo.co.jp/dk521123/37341093.html