1 ." Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved. 2 ." DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 ." 4 ." This code is free software; you can redistribute it and/or modify it 5 ." under the terms of the GNU General Public License version 2 only, as 6 ." published by the Free Software Foundation. 7 ." 8 ." This code is distributed in the hope that it will be useful, but WITHOUT 9 ." ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10 ." FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11 ." version 2 for more details (a copy is included in the LICENSE file that 12 ." accompanied this code). 13 ." 14 ." You should have received a copy of the GNU General Public License version 15 ." 2 along with this work; if not, write to the Free Software Foundation, 16 ." Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 17 ." 18 ." Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 ." or visit www.oracle.com if you need additional information or have any 20 ." questions. 21 ." 22 .TH jhat 1 "07 May 2011" 23 24 .LP 25 .SH "名前" 26 jhat \- Java ヒープ解析ツール 27 .LP 28 .RS 3 29 .TP 2 30 o 31 形式 32 .TP 2 33 o 34 パラメータ 35 .TP 2 36 o 37 説明 38 .TP 2 39 o 40 オプション 41 .TP 2 42 o 43 関連項目 44 .RE 45 46 .LP 47 .SH "形式" 48 .LP 49 .nf 50 \f3 51 .fl 52 \fP\f3jhat\fP [ \f2options\fP ] <heap\-dump\-file> 53 .fl 54 55 .fl 56 .fi 57 58 .LP 59 .SH "パラメータ" 60 .LP 61 .RS 3 62 .TP 3 63 options 64 オプションを使用する場合、コマンド名の直後に記述してください。 65 .TP 3 66 heap\-dump\-file 67 ブラウズ対象となる Java バイナリヒープダンプファイル。複数のヒープダンプを含むダンプファイルの場合、「foo.hprof#3」のようにファイル名の後に「#<number>」を付加することで、ファイル内の特定のダンプを指定できます。 68 .RE 69 70 .LP 71 .SH "説明" 72 .LP 73 .LP 74 \f3jhat\fP コマンドは、java ヒープダンプファイルを解析し、Web サーバーを起動します。jhat を使えば、お好みの Web ブラウザを使ってヒープダンプをブラウズできます。jhat は、「ある既知のクラス「Foo」のすべてのインスタンスを表示する」といった、事前に設計されたクエリのほか、\f3OQL\fP (\f3O\fPbject \f3Q\fPuery \f3L\fPanguage) もサポートします。OQL のヘルプには、jhat によって表示される OQL ヘルプページからアクセスできます。デフォルトポートを使用する場合、OQL のヘルプは http://localhost:7000/oqlhelp/ で利用可能です。 75 .LP 76 .LP 77 Java のヒープダンプを生成するには、いくつかの方法があります。 78 .LP 79 .RS 3 80 .TP 2 81 o 82 jmap(1) の \-dump オプションを使って実行時にヒープダンプを取得する。 83 .TP 2 84 o 85 jconsole(1) のオプションを使って 86 .na 87 \f2HotSpotDiagnosticMXBean\fP @ 88 .fi 89 http://java.sun.com/javase/6/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean.html 経由で実行時にヒープダンプを取得する。 90 .TP 2 91 o 92 \-XX:+HeapDumpOnOutOfMemoryError VM オプションを指定すると、OutOfMemoryError のスロー時にヒープダンプが生成される。 93 .TP 2 94 o 95 .na 96 \f2hprof\fP @ 97 .fi 98 http://java.sun.com/developer/technicalArticles/Programming/HPROF.html を使用する。 99 .RE 100 101 .LP 102 .LP 103 \f3注:\fP このツールは\f3試験的なもの\fPであり、将来の JDK のバージョンでは\f3利用できなくなる\fP可能性があります。 104 .LP 105 .SH "オプション" 106 .LP 107 .RS 3 108 .TP 3 109 \-stack false/true 110 オブジェクト割り当て呼び出しスタックの追跡を無効にします。ヒープダンプ内で割り当てサイト情報が使用できない場合、このフラグを false に設定する必要があります。デフォルトは true です。 111 .TP 3 112 \-refs false/true 113 オブジェクトへの参照の追跡を無効にします。デフォルトは true です。デフォルトでは、ヒープ内のすべてのオブジェクトについて、バックポインタ (指定されたオブジェクトをポイントしているオブジェクト。参照者または受信参照とも呼ばれる) が計算されます。 114 .TP 3 115 \-port port\-number 116 jhat の HTTP サーバーのポートを設定します。デフォルトは 7000 です。 117 .TP 3 118 \-exclude exclude\-file 119 「到達可能なオブジェクト」のクエリから除外すべきデータメンバーの一覧を含むファイルを指定します。たとえば、このファイルに \f2java.lang.String.value\fP が含まれていた場合、特定のオブジェクト「o」から到達可能なオブジェクトのリストを計算する際に、\f2java.lang.String.value\fP フィールドに関連する参照パスが考慮されなくなります。 120 .TP 3 121 \-baseline baseline\-dump\-file 122 ベースラインとなるヒープダンプを指定します。両方のヒープダンプ内で同じオブジェクト ID を持つオブジェクトは「新規ではない」としてマークされます。その他のオブジェクトは「新規」としてマークされます。これは、異なる 2 つのヒープダンプを比較する際に役立ちます。 123 .TP 3 124 \-debug int 125 このツールのデバッグレベルを設定します。0 は「デバッグ出力なし」を意味します。より大きな値を設定すると、より冗長なモードになります。 126 .TP 3 127 \-version 128 バージョン番号を報告したあと、終了します。 129 .TP 3 130 \-h 131 ヘルプメッセージを出力して終了します。 132 .TP 3 133 \-help 134 ヘルプメッセージを出力して終了します。 135 .TP 3 136 \-J<flag> 137 jhat が実行されている Java 仮想マシンに <flag> を渡します。たとえば、512M バイトの最大ヒープサイズを使用するには、\-J\-Xmx512m とします。 138 .RE 139 140 .LP 141 .SH "関連項目" 142 .LP 143 .RS 3 144 .TP 2 145 o 146 jmap(1) 147 .TP 2 148 o 149 jconsole(1) 150 .TP 2 151 o 152 .na 153 \f2hprof \- ヒープおよび CPU プロファイリングツール\fP @ 154 .fi 155 http://java.sun.com/developer/technicalArticles/Programming/HPROF.html 156 .RE 157 158 .LP 159 | 1 '\" t 2 .\" Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. 3 .\" Title: jhat 4 .\" Language: English 5 .\" Date: 2013年11月21日 6 .\" SectDesc: トラブルシューティング・ツール 7 .\" Software: JDK 8 8 .\" Arch: 汎用 9 .\" 10 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 11 .\" 12 .\" This code is free software; you can redistribute it and/or modify it 13 .\" under the terms of the GNU General Public License version 2 only, as 14 .\" published by the Free Software Foundation. 15 .\" 16 .\" This code is distributed in the hope that it will be useful, but WITHOUT 17 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 18 .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 19 .\" version 2 for more details (a copy is included in the LICENSE file that 20 .\" accompanied this code). 21 .\" 22 .\" You should have received a copy of the GNU General Public License version 23 .\" 2 along with this work; if not, write to the Free Software Foundation, 24 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 25 .\" 26 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 27 .\" or visit www.oracle.com if you need additional information or have any 28 .\" questions. 29 .\" 30 .pl 99999 31 .TH "jhat" "1" "2013年11月21日" "JDK 8" "トラブルシューティング・ツール" 32 .\" ----------------------------------------------------------------- 33 .\" * Define some portability stuff 34 .\" ----------------------------------------------------------------- 35 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 36 .\" http://bugs.debian.org/507673 37 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html 38 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 39 .ie \n(.g .ds Aq \(aq 40 .el .ds Aq ' 41 .\" ----------------------------------------------------------------- 42 .\" * set default formatting 43 .\" ----------------------------------------------------------------- 44 .\" disable hyphenation 45 .nh 46 .\" disable justification (adjust text to left margin only) 47 .ad l 48 .\" ----------------------------------------------------------------- 49 .\" * MAIN CONTENT STARTS HERE * 50 .\" ----------------------------------------------------------------- 51 .SH "NAME" 52 jhat \- Javaヒープを分析します。このコマンドは試験的なもので、サポートされていません。 53 .SH "概要" 54 .sp 55 .if n \{\ 56 .RS 4 57 .\} 58 .nf 59 \fIjhat\fR [ \fIoptions\fR ] \fIheap\-dump\-file\fR 60 .fi 61 .if n \{\ 62 .RE 63 .\} 64 .PP 65 \fIoptions\fR 66 .RS 4 67 コマンドライン・オプション。オプションを参照してください。 68 .RE 69 .PP 70 \fIheap\-dump\-file\fR 71 .RS 4 72 ブラウズ対象となるJavaバイナリ・ヒープ・ダンプ・ファイル。複数のヒープ・ダンプを含むダンプ・ファイルの場合、\fImyfile\&.hprof#3\fRのようにファイル名の後に\fI#<number>\fRを付加することで、ファイル内の特定のダンプを指定できます。 73 .RE 74 .SH "説明" 75 .PP 76 \fIjhat\fRコマンドはJavaヒープ・ダンプ・ファイルを解析し、Webサーバーを開始します。\fIjhat\fRコマンドを使用して、お気に入りのブラウザでヒープ・ダンプを参照できます。\fIjhat\fRコマンドは、既知のクラス\fIMyClass\fRのすべてのインスタンスを表示するなどの事前設計済の問合せやObject Query Language (OQL)をサポートします。ヒープ・ダンプの問合せを除き、OQLはSQLに似ています。OQLのヘルプには、\fIjhat\fRコマンドによって表示されるOQLヘルプ・ページからアクセスできます。デフォルト・ポートを使用する場合、OQLのヘルプはhttp://localhost:7000/oqlhelp/で利用可能です。 77 .PP 78 Javaのヒープ・ダンプを生成するには、次のいくつかの方法があります。 79 .sp 80 .RS 4 81 .ie n \{\ 82 \h'-04'\(bu\h'+03'\c 83 .\} 84 .el \{\ 85 .sp -1 86 .IP \(bu 2.3 87 .\} 88 \fIjmap \-dump\fRオプションを使用して実行時にヒープ・ダンプを取得します。jmap(1)を参照してください。 89 .RE 90 .sp 91 .RS 4 92 .ie n \{\ 93 \h'-04'\(bu\h'+03'\c 94 .\} 95 .el \{\ 96 .sp -1 97 .IP \(bu 2.3 98 .\} 99 \fIjconsole\fRオプションを使用して\fIHotSpotDiagnosticMXBean\fR経由で実行時にヒープ・ダンプを取得します。jconsole(1)および\fIHotSpotDiagnosticMXBean\fRのインタフェースの説明( 100 http://docs\&.oracle\&.com/javase/8/docs/jre/api/management/extension/com/sun/management/HotSpotDiagnosticMXBean\&.html)を参照してください。 101 .RE 102 .sp 103 .RS 4 104 .ie n \{\ 105 \h'-04'\(bu\h'+03'\c 106 .\} 107 .el \{\ 108 .sp -1 109 .IP \(bu 2.3 110 .\} 111 ヒープ・ダンプは、\fI\-XX:+HeapDumpOnOutOfMemoryError\fR 112 Java仮想マシン(JVM)オプションを指定することで、\fIOutOfMemoryError\fRがスローされたときに生成されます。 113 .RE 114 .sp 115 .RS 4 116 .ie n \{\ 117 \h'-04'\(bu\h'+03'\c 118 .\} 119 .el \{\ 120 .sp -1 121 .IP \(bu 2.3 122 .\} 123 \fIhprof\fRコマンドを使用します。HPROF: Heap/CPUプロファイリング・ツール 124 (http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html)を参照してください 125 .RE 126 .SH "オプション" 127 .PP 128 \-stack false|true 129 .RS 4 130 オブジェクト割当呼出しスタックの追跡を無効にします。ヒープ・ダンプ内で割当サイト情報が使用できない場合、このフラグを\fIfalse\fRに設定する必要があります。デフォルトは\fItrue\fRです。 131 .RE 132 .PP 133 \-refs false|true 134 .RS 4 135 オブジェクトへの参照の追跡を無効にします。デフォルトは\fItrue\fRです。デフォルトでは、ヒープ内のすべてのオブジェクトについて、バックポインタ(指定されたオブジェクトをポイントしているオブジェクト。参照者または受信参照とも呼ばれる)が計算されます。 136 .RE 137 .PP 138 \-port \fIport\-number\fR 139 .RS 4 140 \fIjhat\fRのHTTPサーバーのポートを設定します。デフォルトは7000です。 141 .RE 142 .PP 143 \-exclude \fIexclude\-file\fR 144 .RS 4 145 到達可能なオブジェクトの問合せから除外する必要があるデータ・メンバーの一覧を含むファイルを指定します。たとえば、このファイルに\fIjava\&.lang\&.String\&.value\fRが含まれていた場合、特定のオブジェクト\fIo\fRから到達可能なオブジェクトのリストを計算する際に、\fIjava\&.lang\&.String\&.value\fRフィールドに関連する参照パスが考慮されなくなります。 146 .RE 147 .PP 148 \-baseline \fIexclude\-file\fR 149 .RS 4 150 ベースラインとなるヒープ・ダンプを指定します。両方のヒープ・ダンプ内で同じオブジェクトIDを持つオブジェクトは新規ではないとしてマークされます。他のオブジェクトは新規としてマークされます。これは、異なる2つのヒープ・ダンプを比較する際に役立ちます。 151 .RE 152 .PP 153 \-debug \fIint\fR 154 .RS 4 155 このツールのデバッグ・レベルを設定します。レベル0はデバッグ出力がないことを意味します。より大きな値を設定すると、より冗長なモードになります。 156 .RE 157 .PP 158 \-version 159 .RS 4 160 リリース番号をレポートして終了します 161 .RE 162 .PP 163 \-h 164 .RS 4 165 ヘルプ・メッセージを表示して終了します。 166 .RE 167 .PP 168 \-help 169 .RS 4 170 ヘルプ・メッセージを表示して終了します。 171 .RE 172 .PP 173 \-J\fIflag\fR 174 .RS 4 175 \fIjhat\fRコマンドを実行しているJava仮想マシンに\fIflag\fRを渡します。たとえば、512Mバイトの最大ヒープ・サイズを使用するには、\fI\-J\-Xmx512m\fRとします。 176 .RE 177 .SH "関連項目" 178 .sp 179 .RS 4 180 .ie n \{\ 181 \h'-04'\(bu\h'+03'\c 182 .\} 183 .el \{\ 184 .sp -1 185 .IP \(bu 2.3 186 .\} 187 jmap(1) 188 .RE 189 .sp 190 .RS 4 191 .ie n \{\ 192 \h'-04'\(bu\h'+03'\c 193 .\} 194 .el \{\ 195 .sp -1 196 .IP \(bu 2.3 197 .\} 198 jconsole(1) 199 .RE 200 .sp 201 .RS 4 202 .ie n \{\ 203 \h'-04'\(bu\h'+03'\c 204 .\} 205 .el \{\ 206 .sp -1 207 .IP \(bu 2.3 208 .\} 209 HPROF: Heap/CPUプロファイリング・ツール 210 (http://docs\&.oracle\&.com/javase/8/docs/technotes/samples/hprof\&.html) 211 .RE 212 .br 213 'pl 8.5i 214 'bp |