10 Oracle Tuxedoの診断ツールについて

このトピックには、次の項があります。

10.1 概要

診断ツールは、Tuxedoコマンドです。これは、特に本番環境でしか再現できない問題をシステム管理者が分析する場合に、Tuxedoの実行時情報を収集するための便利な方法です。

10.2 インストール要件

診断ツールを使用するには、プラットフォームに応じて次の表のコマンドをインストールし、環境変数PATH に設定します。

プラットフォーム コマンド
Linux cp、file、gdb、gstack、ldd、lsb_release、ps、rm、strace、which
Solaris X86 cp、dbx、dirname、file、ldd、ps、psig、pstack、rm、showrev、truss、uname、which
Solaris Sparc cp、dbx、dirname、file、ldd、ps、psig、pstack、rm、showrev、truss、uname、which
AIX cp、dbx、dirname、file、instfix、ldd、oslevel、procstack、ps、rm、truss、uname、which、grep
HP-UNIX cp、dirname、file、gdb、ldd、lstrace、ps、pstack、rm、uname、which、ldd、gdb、pstack、uname、swlist
Windows DUMPBIN.exe、cbd.exe、systeminfo.exe、windbg.exe

10.3 診断ツールの使用

診断ツールは、TUXDIR/binにあるdiagnosetoolという名前のTuxedoコマンドです。

10.3.1 環境変数の設定

診断ツールを使用する前に、diagnoseToolEnvFileファイルに次の環境変数を手動で入力し、これをTUXDIR/binディレクトリに配置します。
TUXDIR=<Tuxedo環境変数TUXDIRの値>
Oracle Tuxedoの絶対パス名
APPDIR=<Tuxedo環境変数APPDIRの値>
ターゲットの管理対象ノード上のTuxedoアプリケーションの絶対パス名
TUXCONFIG=<Tuxedo環境変数TUXCONFIGの値>
ターゲットの管理対象ノード上のTUXCONFIGファイルの絶対パス名
BDMCIBFUG=<Tuxedo環境変数BDMCONFIGの値>
ターゲットの管理対象ノード上のBDMCOBFIGファイルの絶対パス名
DIAGNOSEROOTDIR=<環境変数DIAGNOSEROOTDIRの値>
diagnosetoolの絶対パス名

ノート:

構成は少なくとも1回実行する必要があります。すべての環境変数が必須です。構成の変更は、diagnoseToolEnvFileで手動で更新します。

10.3.2 実行時情報の取得

  • UNIXプラットフォームの場合

    diagnosetool --type <error|crash|hang> [--tmtrace] [--aduitlog] [--ubb] [--dmc] [--core <core_path>] [--pid <Process_number>] [--trace <executable_with_option>]

  • Windowsプラットフォームの場合

    diagnosetool.exe --type <error|crash|hang> [--tmtrace] [--aduitlog] [--ubb] [--dmc] [--core <core_path>] [--pid <Process_number>]

10.4 診断ツール・オプション

type <error|crash|hang>

ツールを使用する前に、適切なbugのタイプを指定します。

  • type error: プログラム論理エラー
  • type crash: サーバー/クライアントのクラッシュ
  • type hang: プロセスのハング

bugのタイプの詳細は、「デバッグ情報」を参照してください。

tmtrace
TMTRACEをオンにして、対応するULOGファイルを収集します。
aduitlog
問題がTuxedoドメインに関係する場合、監査ログをオンにして、対応する監査ログを収集します。
ubb
UBBCONFIGを収集します
dmc
DMCONFIGを収集します。
trace <executable_with_option>
executable_with_optionにより、特定のプログラムからトレースを収集します。
core <core_path>
このオプションはオプションtype crashで、コア・ファイルの絶対パス名を指定するために使用します。
pid <process_number>
このオプションはオプションtype hangで、プロセスIDを指定するためにのみ使用できます。

10.5 デバッグ情報

このトピックには、次の項があります。

10.5.1 デバッグ情報のカテゴリ

問題には3つの種類があります。

  • サーバーまたはクライアントのクラッシュ

    プロセスがクラッシュし、コア・ファイルまたはダンプ・ファイルが生成される場合、診断ツールを使用して、スタック・トレースをファイルに書き込むことができます。問題のタイプはサーバーまたはクライアントのクラッシュとして定義して、対応する情報を取得できます。

  • サーバーまたはクライアントのハング

    プロセスが無限ループに入ったか、関数の待ち状態が長時間にわたって続いている場合、診断ツールを使用して、プロセスの実行状態を把握できます。問題のタイプはサーバーまたはクライアントのハングとして定義して、対応する情報を取得できます。

  • プログラム論理エラー

    他のすべての問題は、問題のタイプをプログラム論理エラーと定義して、対応する情報を取得できます。

他のすべての問題は、問題のタイプをプログラム論理エラーと定義して、対応する情報を取得できます。

10.5.2 各カテゴリのデバッグ情報

問題のタイプに応じて、それぞれ異なる情報を取得できます。

  • プログラム論理エラー
    • 一般情報の取得
    • システム・コール・トレースの取得
  • サーバーまたはクライアントのクラッシュ
    • 一般情報の取得
    • サーバーまたはクライアントのクラッシュ時のコール・スタックの取得
    • システム・コール・トレースの取得
  • サーバーまたはクライアントのハング
    • 一般情報の取得
    • コール・スタックおよびtrussコマンド出力の取得
    • システム・コール・トレースの取得

ノート:

実行中のプロセスでは、同じ所有者が診断ツールを実行してください。

一般情報とは、次の情報です。

  • Tuxedoのリリースおよびパッチ・レベル
  • OS情報およびOSパッチ情報

    ノート:

    この情報はLinuxシステムではサポートされません。
    TMTRACEを開いて、対応するULOGファイルを取得

ノート:

これには、該当のTuxedoサーバーのシャットダウンが必要です。これは、ユーザー自身が、または診断ツールによって実行できます。あるいは、サーバーをシャットダウンせずに機能を無効化することも可能です。
  • ドメインの監査ログを開いて、対応する監査ログを取得

    ノート:

    これには、GWTDOMAINサーバーのシャットダウンが必要です。これは、ユーザー自身が、または診断ツールによって実行できます。あるいは、サーバーをシャットダウンせずに機能を無効化することも可能です。
  • BBダンプの取得
  • $TUXDIR/$APPDIR/ubbconfig、$APPDIR/dmconfigなど、他の構成ファイルの構成が可能

    ノート:

    情報は機密であると考えられるため、情報を提供しないことを選択できます。
  • すべてのTuxedoプロセスに関する次の情報
    • マシンID
    • グループID
    • サーバーID
    • プロセスID
    • プログラム名
    • プロセス・ステータス
    • プロセス実行の優先度
    • 正常値

      ノート:

      この情報はWindowsプラットフォームではサポートされません。
    • このプロセスにリンクしている動的ライブラリ
    • 各プロセスのシグナル・アクションおよびハンドラ

      ノート:

      この情報はSolarisプラットフォームではサポートされません

製品のルート・ディレクトリの下のlog/<year>.<month>.<day>-<hour>.<minute>.<second>サブディレクトリには、すべてのデバッグ情報が保持され、次のファイルが格納される可能性があります:

baseInfo.txt

これは必須です。一般情報が格納されています。

bbdump

これは必須です。BBダンプファイルです。

patchInfo.txt

OSパッチ情報が格納されています。

ノート:

この情報はLinuxプラットフォームではサポートされません。
trace-<executeBinaryName>.txt
特定のコマンドが実行されている場合のシステム取得のコール・トレースが格納されています。

ノート:

この情報はWindowsプラットフォームではサポートされません。

UBBCONFIG

オプションUBBが使用された場合にのみ生成される、UBBCONFIGファイルです。

DMCONFIG

オプションDMCが使用された場合にのみ生成される、DMCONFIGファイルです。