ttrace - ハイパーバイザーレイヤーからのトラップトレースの管理
ttrace
ttrace config -H
ttrace config -H [ -b bufsz [k | m] ]
ttrace enable -H
ttrace enable -H [ -p processor_id ...]
ttrace disable -H
ttrace disable -H [ -p processor_id ...]
ttrace suspend -H
ttrace resume -H
ttrace dump -H [ -t] [-o output] [-p processor_id ...]
ttrace ユーティリティーはハイパーバイザーレベルのトラップトレースの管理に使用します。特権ユーザーは、オンデマンドで動的にトレースを有効および無効にし、必要に応じてトレースを構成できます。
引数を付けない ttrace は使用方法の情報を表示します。
サポートしているオプションは、次のとおりです。
sun4v プラットフォーム上のハイパーバイザートラップトレースにコマンドを適用します。
システムのすべての CPU にトレースバッファーサイズ bufsz を設定します。バッファーサイズ bufsz には接尾辞 k または m を含めることができます。デフォルトで bufsz は 2 * PAGESIZE です。目的のサイズのバッファーが割り当てられると、新しいバッファーが古いバッファーに置き換わり、トラップトレースの再構成も行われます。HV トレースバッファーの上限のサイズは 16M です。
ただし、メモリー不足のため、現時点で目的のバッファーを割り当てることができない場合、ttrace は以前に割り当てられたバッファーを使用し続けます。その結果、特定の CPU の実際の bufsz はグローバルな bufsz と異なる可能性があります。
トラップトレースの再構成は負荷が大きいため、このオプションを本番マシンであまり頻繁に使用することはお勧めしません。
アクションが適用される CPU を一覧表示します。このオプションを受け入れることができるサブコマンドは enable、disable、および dump です。
トレースレコードのダンプ時の出力ファイルを設定します。このオプションを省略した場合、デフォルトの出力は stdout です。
タイムスタンプの順序で、すべての CPU にわたるトレースレコードを移動します。このオプションを省略した場合、最初に CPU 別でトレースレコードを移動します。
サポートされているサブコマンドは次のとおりです。
CPU のリストでトラップトレースを有効にします。–p オプションによって CPU を指定しない場合、すべての CPU でトレースが有効になります。
CPU のリストでトラップトレースを無効にします。–p オプションによって CPU を指定しない場合、すべてのトレースが無効になります。
すべての CPU でトラップトレースを中断します。トレースが無効にされている CPU を中断できます。再開されても引き続き無効のままになります。サブコマンド suspend および resume はサブコマンド disable および enable より発生するオーバーヘッドが少なくなります。すべての CPU で一時的にトレースを停止する場合、suspend と resume を使用してください。
すべての CPU のトレースを中断前のステータスに戻します。suspend および resume はすべての CPU に対して動作します。
オプションなしで、すべての CPU のトラップトレースのステータスを表示します。オプション –b bufsz を付けて指定した場合、トレースバッファーサイズは指定した bufsz に設定され、トラップトレースが再構成されます。
トレースレコードをダンプします。オプションを付けない場合、端末にすべてのトレースレコードが表示されます。出力ファイルと CPU のリストを指定すると、これらの CPU からのトレースのみが指定した出力ファイルにダンプ出力されます。
出力の形式は、将来変更される場合があります。
CPU は次のトラップトレースステータスをサポートしています。
トレースバッファーが割り当てられているため、トレースを有効にする準備ができています。
トレースバッファーが割り当てられており、構成されていますが、有効にされていません。そのため、トレースを有効にする準備ができています。
トラップトレースが有効にされているため、トレースバッファーの内容が CPU のトラップアクティビティーによって更新されます。
トラップトレースが無効にされています。そのため、トレースバッファーの内容は再度有効にされるまで、更新されません。ステータス Disabled と Enabled の間で発生したトラップアクティビティーはトレースバッファーに反映されません。
すべての CPU でトレースが中断されています。
次の終了ステータスが返されます。
正常終了。
エラーが発生した。
次の例に、config サブコマンドを使用して、各 CPU の現在のトラップトレースのステータスとそのバッファーサイズを表示する方法を示しています。
# ttrace config -H HV trap trace status : CPU Trace-Status buffer size 0 Ready 0x22e70000 32768 1 Ready 0x22950000 32768 2 Ready 0x22958000 32768 3 Ready 0x22960000 32768使用例 2 トレースバッファーサイズの設定
次の例では、–b <bufsz オプションで config サブコマンドを使用して、トレースバッファーサイズを設定する方法を示しています。
# ttrace config -H -b 64k HV ttrace buffer size has been set to 65536 and recofigured successfully. HV trap trace is ready to be enabled.使用例 3 すべての CPU でのトレースの有効化
次の例では、enable サブコマンドを使用して、すべての CPU でトレースを有効にする方法を示しています。
# ttrace enable -H # ttrace config -H CPU Trace-Status buffer size 0 Enabled 0x22d30000 65536 1 Enabled 0x22d40000 65536 2 Enabled 0x22e70000 65536 3 Enabled 0x22950000 65536
オプション –p の後に CPU のリストを付けたサブコマンド enable は、現在無効にされている場合にのみ CPU のリストでトレースを有効にします。
使用例 4 すべての CPU でのトレースの無効化次の例では、–p オプションを付けないで disable サブコマンドを使用して、すべての CPU でトレースを無効にする方法を示しています。–p オプションを指定した場合、CPU のリストでのトレースのみが無効になります。
# ttrace disable -H -p 2 3 # ttrace config -H CPU Trace-Status buffer size 0 Enabled 0x22d30000 65536 1 Enabled 0x22d40000 65536 2 Disabled 0x22e70000 65536 3 Disabled 0x22950000 65536使用例 5 すべての CPU でのトラップトレースの中断
次の例では、すべての CPU でトラップトレースを中断する方法を示しています。
# ttrace suspend -H使用例 6 すべての CPU でのトラップトレースの再開
次の例では、すべての CPU でトラップトレースを再開する方法を示しています。suspend と resume は disable と enable より効率的です。
# ttrace resume -H使用例 7 トレースレコードの表示
次の例では、トレースレコードの表示方法を示しています。引数を付けない場合、端末にすべてのトレースレコードが表示されます。–o オプションのあとに出力ファイルを付けて指定すると、レコードが出力ファイルに保存されます。–p オプションのあとに CPU のリストを指定した場合、これらの CPU からのレコードのみが保存されます。
# ttrace dump -H -o trace.out -p 2 3
–t オプションを付けると、CPU 別ではなく、タイムスタンプの順序で CPU 全体のトレースレコードが保存されます。
# ttrace dump -H -t -o alltrace.out
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|