Interstage Application Server/Interstage Web Server トラブルシューティング集
目次
索引
付録A Javaツール機能
> A.4 スレッドダンプツール
A.4.5 注意事項
JVM.dllが動作していないプロセスに対しては、何も動作しません。
アプリケーションの不良(JNIによる領域破壊など)で、Java VM内の管理領域が破壊されていたり、または、不整合があったりする場合、スレッドダンプ採取対象のプロセスでアプリケーションエラーが発生する場合があります。
-fオプションを使用してファイルにスレッドダンプを出力する際、スレッドダンプ採取処理の間に、アプリケーションが標準出力にログ等を出力した場合、それらが、-fオプションで指定したファイルに混入することがあります。アプリケーション側で、すでに標準出力、標準エラー出力をリダイレクトして、ログファイル等を作成している場合、アプリケーションの出力が、これらログファイルには出力されません。
JNIのJNI_CreateJavaVMを使って起動したアプリケーションで、Java VMのオプションvfprintf_hookを指定した場合は、-jオプションを使用してください。この場合、-fオプションは使用できません。vfprintf_hookで指定したフック関数の処理によりスレッドダンプが出力されます。
Java VMで、VM Thread(Java VM内の管理スレッド)がハングアップしている場合は、スレッドダンプが出力できません。
ServletやEJBアプリケーションなどWindowsサービスとして動くJavaプログラムの動作環境がWindows Vista(R)またはWindows Server(R)2008である場合、thdumpSVCコマンドを使用する必要があります。その他の環境では、thdumpコマンドを使用します。
スレッドダンプを取得しようとしているJavaプログラムに対し、スレッドダンプツールの実行をするユーザは、同等以上の権限をもっている必要があります。(Administratorが実行しているJavaプログラムに対し、一般ユーザがスレッドダンプツールを実行してもスレッドダンプの採取はできません)
ServletやEJBアプリケーションなどのスレッドダンプを取得する場合、Administrator権限が必要です。
また、環境がWindows Vista(R)、Windows Server(R)2008である場合、Administratorグループのメンバにより、管理者権限で実行したコマンドプロンプトからスレッドダンプツールの操作をする必要があります。管理者権限でコマンドプロンプトを実行するには、コマンドプロンプトの実行ファイルをエクスプローラー上で右クリックし、"管理者権限で実行する"を選択します。
ServletやEJBアプリケーションなどのサービスプログラムのスレッドダンプを取得する場合、Administrator権限が必要です。
ターミナルサービス、またはリモートデスクトップ接続によるリモートアクセスには対応していません。
目次
索引
Copyright 2008 FUJITSU LIMITED