dtraceコマンドのオプション
dtraceコマンドでは、次のオプションを使用できます:
dtrace [-32 | -64] [-CeFGHhlqSvVwZ] [-b bufsz] [-c cmd] [-D name[=value]]
[-I path] [-L path] [-o output] [-p pid] [-s script] [-U name]
[-x opt[=val]] [-X a | c | s | t]
[-P provider [[predicate] action]]
[-m [provider:] module [[predicate] action]]
[-f [[provider:] module:] function [[predicate] action]]
[-n [[[provider:] module:] function:] name [[predicate] action]]
[-i probe-id [[predicate] action]]
ここで、predicateはスラッシュ//内の任意のD述語であり、actionは、D言語構文に従って、中カッコ{}内の任意のD文リストです。
-P, -m, -f, -nおよび-iオプションで受け入れられる引数には、オプションのD言語「述語」をスラッシュ//内に、オプションのD言語「アクション」文リストを中括弧{}内に含めることができます。 コマンド行で指定されたDプログラム・コードは、シェルによるメタ・キャラクタの解釈を避けるために、適切に引用符で囲む必要があります。
次のオプションを使用できます。
-
-32 | -64 -
32ビットまたは64ビットのDプログラムとELFファイルのどちらを生成するかを設定します。
dtraceがネイティブ・データ・モデルをデフォルトとして選択するため、通常、このオプションは必要ありません。 -
-b bufsz -
プリンシパル・トレース・バッファ・サイズ(
bufsz)を設定します。 トレース・バッファ・サイズには、任意のサイズのサフィクスk,m,gまたはtを含めることができます。 バッファ領域を割り当てられない場合、dtraceは、bufresizeプロパティの設定に応じてバッファ・サイズを減らすか、または終了しようとします。 -
-c cmd -
指定されたコマンド
cmdを実行し、完了後に終了します。 コマンド行に複数の-cオプションが存在する場合、すべてのコマンドが終了するとdtraceが終了し、終了時に各子プロセスの終了ステータスを報告します。 最初のコマンドのプロセスIDは、コマンド行で指定されたすべてのDプログラム、または$targetマクロ変数を介して-sオプションを使用して使用可能になります。 -
-C -
コンパイルする前に、Dプログラムに対してCプリプロセッサ(
cpp)を実行します。-D,-U,-Iおよび-Hオプションを使用して、Cプリプロセッサにオプションを渡すことができます。-Xオプションを使用すると、C標準準拠の程度を選択できます。 Cプリプロセッサを呼び出すときにDコンパイラによって定義されるトークンのセットについては、-Xを参照してください。 -
-D name[=value] -
cppの呼び出し時に「名前」を定義します(
-Cオプションを使用して有効)。 等号(=)およびオプションの「値」を指定すると、対応する値が名前に割り当てられます。 このオプションは、-Dオプションを各cpp呼出しに渡します。 -
-e -
リクエストのコンパイル後、プローブを有効にする前に終了します。 このオプションは、Dコンパイラ・オプションと組み合わせることができます。 この組み合わせにより、プログラムが実行されずにコンパイルされ、対応するインストゥルメンテーションが有効であることが検証されます。
-
-f [[provider:]module:]function[[predicate]action]] -
トレースまたは一覧表示する関数名を指定します(
-lオプション)。 対応する引数には、provider:module:function、module:function、またはfunctionという形式のプローブ記述を含めることができます。 未指定のプローブ記述フィールドは空白で、それらのフィールドの値に関係なくすべてのプローブに一致します。 説明にfunction以外の修飾子が指定されていない場合、対応するfunctionを持つすべてのプローブが一致します。-f引数には、オプションのDプローブ句のサフィクスを付けることができます。 コマンド行では、一度に複数の-fオプションを指定できます。 -
-F -
関数のエントリと戻り値を識別して、トレース出力を結合します。 関数エントリ・プローブ・レポートはインデントされ、その出力の前に
->が付きます。 関数戻りプローブ・レポートはインデントされず、その出力の前に<-が付きます。 システム・コール・エントリ・プローブ・レポートはインデントされ、その出力にはプレフィクス=>が付きます。 システム・コール・リターン・プローブ・レポートはインデントされず、その出力の前に<=が付きます。 -
-G -
埋込みDTraceプログラムを含むELFファイルを生成します。 プログラムで指定されたDTraceプローブは、別のプログラムにリンクできる再配置可能なELFオブジェクト内に保存されます。
-oオプションが指定されている場合、ELFファイルは、このオペランドの引数として指定されたパス名を使用して保存されます。-oオプションが存在せず、DTraceプログラムにfilename.dという名前のファイルが含まれている場合、ELFファイルはfilename.oという名前で保存されます。 それ以外の場合、ELFファイルはd.outという名前で保存されます。 -
-H -
cpp(-Cオプションを使用して有効化)の起動時に、インクルードされたファイルのパス名を出力します。 このオプションは、-Hオプションを各cpp呼出しに渡し、パス名のリストを各行に1つずつstderrに表示します。 -
-h -
指定されたプロバイダ定義のプローブに対応するマクロを含むヘッダー・ファイルを生成します。 このオプションは、あとで
-Gオプションとともに使用するために、ほかのソース・ファイルによって含まれるヘッダー・ファイルを生成できます。-oオプションが指定されている場合、ヘッダー・ファイルは、そのオプションの引数として指定されたパス名を使用して保存されます。-oオプションが存在せず、DTraceプログラムにfilename.dという名前のファイルが含まれている場合、ヘッダー・ファイルはfilename.hという名前で保存されます。 -
-i probe-id [[predicate] action] -
トレースまたはリストするプローブ識別子(
probe-id)を指定します(-lオプション)。dtrace-lに示すように、10進整数を使用してプローブIDを指定できます。-i引数には、オプションのDプローブ句のサフィクスを付けることができます。 同時に複数の-iオプションを指定できます。 -
-I path -
cpp(-Cオプションを使用して有効化)の起動時に、指定したディレクトリpathを#includeファイルの検索パスに追加します。 このオプションは、-Iオプションを各cpp呼出しに渡します。 指定されたpathが、デフォルトのディレクトリ・リストの前に検索パスに挿入されます。 -
-l -
プローブを有効化しないで一覧表示します。
-lオプションが指定されている場合、dtraceは、-P,-m,-f,-n,-iおよび-sオプションを使用して指定された説明に一致するプローブのレポートを生成します。 これらのオプションのいずれかが指定されていない場合、このオプションはすべてのプローブを一覧表示します。 -
-L -
指定されたディレクトリ
pathをDTraceライブラリの検索パスに追加します。 DTraceライブラリは、Dプログラムの記述時に使用できる共通定義を格納するために使用されます。 指定されたpathは、デフォルトのライブラリ検索パスの後に追加されます。 存在する場合、実行中のカーネルのマイナー・バージョン(3.8など)にちなんで名前が付けられたpathのサブディレクトリが、pathの直前に検索されます。 依存性分析は、ディレクトリ間ではなく、各ディレクトリ内でのみ実行されます。 -
-m [[provider:] module: [[predicate] action]] -
トレースまたは一覧表示するモジュール名を指定します(
-lオプション)。 対応する引数には、provider:moduleまたはmoduleのいずれかのプローブ記述形式を含めることができます。 未指定のプローブ記述フィールドは空白で、それらのフィールドの値に関係なくすべてのプローブに一致します。 説明にmodule以外の修飾子が指定されていない場合、対応するmoduleを持つすべてのプローブが一致します。-m引数には、オプションのDプローブ句のサフィクスを付けることができます。 コマンド行で一度に複数の-mオプションを指定できます。 -
-n [[[provider:] module:] function:] name [[predicate] action] -
トレースまたはリストするプローブ名を指定します(
-lオプション)。 対応する引数には、プローブ記述形式provider:module:function:name、module:function:name、function:nameまたはnameのいずれかを含めることができます。 未指定のプローブ記述フィールドは空白で、それらのフィールドの値に関係なくすべてのプローブに一致します。 説明にname以外の修飾子が指定されていない場合、対応するnameを持つすべてのプローブが一致します。-n引数には、オプションのDプローブ句のサフィクスを付けることができます。 コマンド行で一度に複数の-nオプションを指定できます。 -
-o output -
-G、-hおよび-lオプション、またはトレース・データ自体にoutputファイルを指定します。-Gオプションが存在し、-sオプションの引数がfilename.dの形式であり、-oが存在しない場合、デフォルトの出力ファイルはfilename.oです。 それ以外の場合、デフォルトの出力ファイルはd.outです。 -
-p pid -
指定されたプロセスID
pidを取得し、そのシンボル表をキャッシュして、その完了時に終了します。 コマンド行に複数の-pオプションが存在する場合、dtraceはすべてのコマンドが終了したときに終了し、終了時に各プロセスの終了ステータスを報告します。 最初のプロセスIDは、コマンド行で指定されたすべてのDプログラム、または$targetマクロ変数を介して-sオプションを使用して使用可能になります。 -
-P provider[[predicate]action] -
トレースまたはリストするプロバイダ名を指定します(
-lオプション)。 残りのプローブ記述フィールド・モジュール、関数、および名前は空白であり、それらのフィールドの値に関係なくすべてのプローブに一致します。-P引数には、オプションのDプローブ句のサフィクスを付けることができます。 コマンド行では、一度に複数の-Pオプションを指定できます。 -
-q -
停止モードを設定します。
dtraceは、指定されたオプションおよびDプログラムによって一致したプローブの数などのメッセージを抑制し、列ヘッダー、CPU ID、プローブIDを出力しないか、出力に改行を挿入しません。trace()やprintf()などのDプログラム文によってトレースおよびフォーマットされたデータのみが、stdoutに表示されます。 -
-s -
指定されたDプログラム・ソース・ファイルをコンパイルします。
-eオプションを指定すると、プログラムはコンパイルされますが、インストゥルメンテーションは有効になりません。-lオプションが存在する場合、プログラムはコンパイルされ、それによって照合されるプローブのセットが一覧表示されますが、インストゥルメンテーションが有効になっていません。-e、-lまたは-Gのいずれも存在しない場合、Dプログラムによって指定されたインストゥルメンテーションが有効になり、トレースが開始されます。 -
-S -
Dコンパイラの中間コードを表示します。 Dコンパイラは、各Dプログラムに対して生成された中間コードのレポートを
stderrに生成します。 -
-U name -
cpp(-Cオプションを使用して有効化)を起動するときに、指定されたnameを定義解除します。 このオプションは、-Uオプションを各cpp呼出しに渡します。 -
-v -
冗長モードを設定します。
-vオプションが指定されている場合、dtraceは、指定されたDプログラムの最小インタフェース安定性および依存性レベルを示すプログラム安定性レポートを生成します。 -
-V -
dtraceの最上位Dプログラミング・インタフェースを報告します。 バージョン情報がstdoutに出力され、dtraceコマンドが終了します。-vとともに使用すると、dtraceおよび関連ライブラリのバージョンに関する情報もレポートされます。 -
-w -
-s,-P,-m,-f,-nまたは-iオプションを使用して指定されたDプログラムの破壊的アクションを許可します。-wオプションが指定されていない場合、dtraceは破壊的アクションを含むDプログラムのコンパイルまたは有効化を許可しません。 -
-x opt[=val] -
DTraceランタイム・オプションまたはDコンパイラ・オプションを有効化または変更します。 ブール・オプションは、名前を指定して有効にします。 値を持つオプションは、オプション名と値を等号(
=)で区切って設定します。 「DTraceランタイムおよびコンパイル時オプション・リファレンス」を参照してください。 -
-X a | c | s | t -
プリプロセッサのISO C準拠設定を設定します。 オプションは次のとおりです。
-
a | c | t: これらのオプションのいずれかによって、準拠が-std=c99に設定されます。 これはデフォルトです。 -
s: このオプションは、準拠を-traditional-cppに設定します。
-
-
-Z -
ゼロ・プローブに一致するプローブの説明を許可します。
-Zオプションが指定されていない場合、dtraceはエラーを報告し、Dプログラム・ファイル(-sオプション)またはコマンド行(-P,-m,-f,-nまたは-iオプション)で指定されたプローブの説明に既知のプローブと一致しない説明が含まれている場合は終了します。