Java仮想マシンの知識 - ツール

コマンドラインツール

1. JPS

JVMプロセスステータスツールは、仮想マシンのプロセスを表示します。

使用法jps [-q] [-mlvV]

パラメータ説明

  • -q:プロセスIDを印刷
  • -l:クラス開始の完全修飾名を印刷
  • -m:印刷開始クラスにmainメソッドのパラメータ
  • -v:指定された仮想マシンのパラメータを出力します
  • -V:クラス名を印刷

jpsjps -l

2 JSTAT

使用法jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

パラメータ説明

  • オプション:オペレーティング、一般的に使用されるgcutil統計的なガベージコレクションの状況を。
  • -t:タイムスタンプ列を表示します
  • -h:タイトルを表示する行数を指定します。
  • -vmid:プロセスID
  • -interval:出力の各行の時間間隔
  • -count:出力行数を指定します。

jstat -gcutil -h2 -t 15754 100 5代表監視プロセスID 15754ガベージコレクションの統計情報を、出力ライン100ms毎に、総出力は5回、二回、各出力は、タイトルを再エクスポートする必要があります。

[root@root ~]# jstat -gcutil -h2 -t 15754 100 5
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
     11296830.0   0.00 100.00  21.80  25.80  98.41  96.33 113648 2500.825     0    0.000 2500.825
     11296830.2   0.00 100.00  21.80  25.80  98.41  96.33 113648 2500.825     0    0.000 2500.825
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
     11296830.3   0.00 100.00  21.80  25.80  98.41  96.33 113648 2500.825     0    0.000 2500.825
     11296830.4   0.00 100.00  21.80  25.80  98.41  96.33 113648 2500.825     0    0.000 2500.825
Timestamp         S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
     11296830.5   0.00 100.00  21.80  25.80  98.41  96.33 113648 2500.825     0    0.000 2500.825

出力指標の説明

  • S0:遺族0使用領域会計
  • S1:サバイバー1回の割合で使用スペース
  • E:エデン地区使用スペース会計
  • O:昔は、すでにスペースが占めています
  • M:メタデータは、スペースを占めています
  • CCS:スペース会計の圧縮
  • YGC:ミラーGC回
  • YGCT:ミラーGC時間がかかります
  • FGC:フルGC回
  • FGCT:フルGC時間のかかります
  • GCT:総時間がかかるガベージコレクション

3. Jinfoの

JVMの設定情報は、パラメータを変更するために、リアルタイムとリアルタイムの仮想マシンを表示することができます。

使用法jinfo [option] <pid>

パラメータ説明

  • オプション:操作

    -flag値を指定された印刷VM引数
    -flag [+ | - ]は有効または無効に指定されたVMパラメータ
    -flag = VMパラメータを変更し
    、印刷VM引数-flags
    -sysprops印刷Javaのシステム構成を

  • PID:プロセスID

jinfo 15754jinfo -flags 15754

4. jmapの

JVMメモリマップは、スタックダンプファイルを生成するために使用されます。

使用法jmap [option] <pid>

パラメータ説明

  • オプション:操作

    ヒープ:Javaのヒーププリント抽象
    ヒストの[:生きる]:印刷Javaオブジェクトヒープのヒストグラムを、「ライブ」オプションが指定されている場合、唯一のリアルタイムコンピューティングにオブジェクトを
    ダンプ:世代のスナップショットをダンプ

  • PID:プロセスID

jmap -heap 15754jmap -histo:live 15754jmap -dump:live,file=.\heap_dump.hprof 15754

第五jstack

スレッドは、そのようなので、上のデッドロック、無限ループ、長い時間を待っていると同じくらい簡単位置決めスレッド長い休止の問題、のためのJava仮想マシンの現在の瞬間のスナップショットを生成するために使用されます。

使用法jstack -F [-m] [-l] <pid>

パラメータ説明

  • -F:印刷スタックを強制
  • -m:スタックとJavaのネイティブメソッドを印刷中
  • -l:ロックアクセサリーに関する印刷情報
  • PID:プロセスID

jstack -l 15754

6. JT

JVMのヒープ解析ツールは、HTMLファイルを生成し、生成したログスタックjmapのを分析するために使用されます。通常、我々は、MATとして、ログ・スタックを分析するための視覚化ツールを使用します。

7. jcmd

JDKは、代替jstack、Jinfoの、jmapのコマンドをjcmdお勧めします。

  • jcmd -l:すべてのJava仮想マシンの一覧を表示します。
  • jcmd 15754ヘルプ:仮想マシンでサポートされているコマンドを示します。
  • jcmd 15754 PerfCounter.print:関連するすべてのパフォーマンスデータを取得します。
  • jcmd 15754 GC.class_histogram

ビジュアル監視ツール

一般的なツール

  1. JConsoleは:JDKに付属しているツールを監視します
  2. jvisualvm:JDKは、監視ツールが付属して、監視データは、jconsoleをより多くを示し、
  3. JMC:JDKも監視ツールが付属して、監視データはjvisualvm以上を示し、
  4. MAT:メモリアナライザツール、すぐにログ・ダンプを分析することができ、Java仮想マシンのメモリ解析ツール。

おすすめ

転載: www.linuxidc.com/Linux/2019-07/159651.htm