JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
DTrace ユーザーガイド     Oracle Solaris 10 8/11 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  はじめに

2.  DTrace の基本

プローブの一覧を表示する

DTrace でプローブを指定する

プローブを有効にする

DTrace アクションの基本

データ記録アクション

trace() 関数

tracemem() 関数

printf() 関数

printa() 関数

stack() 関数

ustack() 関数

jstack() 関数

破壊アクション

プロセス破壊アクション

stop() 関数

raise() 関数

copyout() 関数

copyoutstr() 関数

system() 関数

カーネル破壊アクション

breakpoint() 関数

panic() 関数

chill() 関数

DTrace 集積体

DTrace 集積体の構文

3.  D 言語を使ったスクリプトの作成

4.  DTrace の使用法

索引

プローブの一覧を表示する

dtrace コマンドに -l オプションを指定すると、DTrace の全プローブの一覧を表示できます。

# dtrace -l
ID   PROVIDER    MODULE        FUNCTION NAME
 1     dtrace                           BEGIN
 2     dtrace                           END
 3     dtrace                           ERROR
 4    syscall                     nosys entry
 5    syscall                     nosys return
 6    syscall                     rexit entry
 7    syscall                     rexit return
 8    syscall                   forkall entry
 9    syscall                   forkall return
10    syscall                      read entry
11    syscall                      read return
...

システム上で使用可能な全プローブの数を確認するには、次のコマンドを入力します。

# dtrace -l | wc -l

報告されるプローブ数は、使用するオペレーティングプラットフォームとインストールされているソフトウェアの種類によって異なります。先ほどの例の BEGIN プローブと END プローブのように、MODULE 欄と FUNCTION 欄に何も表示されないことがあります。これらのフィールドが空になっているプローブは、特定の計測機能付きプログラムの関数や場所に対応していません。このようなプローブは、トレース要求の終わりなど、より抽象的な概念を表しています。プローブ名にモジュールや関数が含まれている場合、このプローブを「アンカーされたプローブ」と呼びます。特定のモジュールや関数に関連付けられていないプローブを「アンカーされていないプローブ」と呼びます。

次の例のように、オプションを追加して、特定のプローブだけを一覧表示できます。

例 2-1 関数を指定してプローブを一覧表示する

特定の関数に関連するプローブだけを一覧するには、-f オプションとその関数名を DTrace に指定します。

# dtrace -l -f cv_wait
ID      PROVIDER        MODULE        FUNCTION NAME
12921        fbt       genunix         cv_wait entry
12922        fbt       genunix         cv_wait return

例 2-2 モジュールを指定してプローブを一覧表示する

特定のモジュールに関連するプローブだけを一覧するには、-m オプションとそのモジュール名を DTrace に指定します。

# dtrace -l -m sd
ID      PROVIDER        MODULE        FUNCTION NAME
17147        fbt            sd          sdopen entry
17148        fbt            sd          sdopen return
17149        fbt            sd         sdclose entry
17150        fbt            sd         sdclose return
17151        fbt            sd      sdstrategy entry
17152        fbt            sd      sdstrategy return
...

例 2-3 名前を指定してプローブを一覧表示する

指定の名前のプローブを一覧するには、-n オプションとプローブ名を DTrace に指定します。

# dtrace -l -n BEGIN
ID      PROVIDER        MODULE        FUNCTION NAME
1         dtrace                               BEGIN

例 2-4 提供元のプロバイダを指定してプローブを一覧表示する

特定のプロバイダから提供されるプローブだけを一覧するには、-P オプションとそのプロバイダ名を DTrace に指定します。

# dtrace -l -P lockstat
ID        PROVIDER        MODULE             FUNCTION NAME
469       lockstat       genunix          mutex_enter adaptive-acquire
470       lockstat       genunix          mutex_enter adaptive-block
471       lockstat       genunix          mutex_enter adaptive-spin
472       lockstat       genunix           mutex_exit adaptive-release
473       lockstat       genunix        mutex_destroy adaptive-release
474       lockstat       genunix       mutex_tryenter adaptive-acquire
...

例 2-5 複数のプロバイダでサポートされる関数とモジュール

一部の関数またはモジュールは、次の例のように、複数のプロバイダでサポートされることがあります。

# dtrace -l -f read
ID        PROVIDER        MODULE             FUNCTION NAME
  10       syscall                               read entry
  11       syscall                               read return
4036       sysinfo       genunix                 read readch
4040       sysinfo       genunix                 read sysread
7885           fbt       genunix                 read entry
7886           fbt       genunix                 read return

これまでの例が示すように、プローブ一覧の出力内容は次のとおりです。