ホームページ > Java > &#&チュートリアル > Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

PHPz
リリース: 2023-05-27 10:02:24
転載
2017 人が閲覧しました

注: VisualVM がリモート サーバーに接続するには、JMX と jstatd という 2 つの方法があります。どちらの方法でもすべての機能を完全にサポートできるわけではありません。

たとえば、JMX は VisualGC をサポートしていません。

jstatd は CPU 監視をサポートしていません

を同時に構成し、実際の使用に必要に応じて選択できます。

jvisualvm プログラムはリモート接続を追加します。ローカル ファイアウォールをオフにしてください。

JMX

1. SpringBoot 起動パラメータを変更する

通常の SpringBoot 起動コマンドは

nohup java -jar demo.jar &
ログイン後にコピー

監視を使用した後:

nohup java -Djava.rmi.server.hostname=192.168.81.149 \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar jvm-1.0-SNAPSHOT.jar &
ログイン後にコピー
java -Djava.rmi.server.hostname=192.168.81.149 \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar jvm-1.0-SNAPSHOT.jar
ログイン後にコピー

jvm -1.0-SNAPSHOT.jar はプロジェクトの jar パッケージです。

192.168.81.149 はプロジェクトがデプロイされているマシンの IP です。

1099 は jvisualvm が接続する必要があるリモート ポート番号です

authenticate=false 無効です。ユーザー認証

##2. ローカルの jvisualvm を使用してリモートを監視します

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法開いた後は何もないかもしれません、空です。これは、プロジェクトには誰かがアクセスする必要があるためです。

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法##jstatd

1. 構成の追加

この方法では、JDK を手動でインストールする必要があります。 jdk はどこにありますか

#jdk ディレクトリ内に

vi jstatd.all.policy
ログイン後にコピー

の下に bin を作成します。パスの影響を排除しやすくするために、ここでは絶対パスを指定しました。

grant codebase "file:${java.home}/../lib/tools.jar" {    
    permission java.security.AllPermission;    
};
ログイン後にコピー

jstatd バックグラウンド アプリケーションを開始します。ポート (デフォルトは 1099) パラメータ -p を使用して、他のポート

jstatd -J-Djava.security.policy=jstatd.all.policy \
-J-Djava.rmi.server.hostname=192.168.81.149 \
-J-Djava.rmi.server.logCalls=true  -p 1098
ログイン後にコピー

(次のコマンドを /usr/local/jdk1.8.0_161/bin パスで実行しました。jstatd.all があります。ポリシー ファイルをこのパスに置きます。他の場所で実行する場合は、必ず絶対パスまたは相対パスを指定してください)

その中で、

-J-Djava.security.policy=jstatd.all.policy 指定路径
-J-Djava.rmi.server.logCalls=true  打印日志
-J-Djava.rmi.server.hostname=192.168.81.149  指定主机名,主机名应该和你用hostname -i命令执行出来的结果一致。
ログイン後にコピー

プロジェクトを開始します

java  -jar jvm-1.0-SNAPSHOT.jar
ログイン後にコピー
2. ローカルの jvisualvm を使用しますリモートを監視するため

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

Jvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法

この 1,098 は、実際には、入力時の 1098 の自動変換です# ##################################

以上がJvisualvm を使用してリモート SpringBoot プロジェクトを監視する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート