プローブを有効にする
プローブを有効にするには、-l オプションを付けずにプローブを指定して、dtrace コマンドを実行します。指定のプローブが起動すると、DTrace はデフォルトのアクションを実行します。特別な指示は不要です。デフォルトのプローブアクションでは、指定のプローブが起動したことだけが示されます。それ以外のデータは記録されません。次に示すのは、sd モジュールに含まれるすべてのプローブを有効にするコード例です。
例 2–6 モジュールを指定してプローブを有効にする
# dtrace -m sd
CPU ID FUNCTION:NAME
0 17329 sd_media_watch_cb:entry
0 17330 sd_media_watch_cb:return
0 17167 sdinfo:entry
0 17168 sdinfo:return
0 17151 sdstrategy:entry
0 17152 sdstrategy:return
0 17661 ddi_xbuf_qstrategy:entry
0 17662 ddi_xbuf_qstrategy:return
0 17649 xbuf_iostart:entry
0 17341 sd_xbuf_strategy:entry
0 17385 sd_xbuf_init:entry
0 17386 sd_xbuf_init:return
0 17342 sd_xbuf_strategy:return
0 17177 sd_mapblockaddr_iostart:entry
0 17178 sd_mapblockaddr_iostart:return
0 17179 sd_pm_iostart:entry
0 17365 sd_pm_entry:entry
0 17366 sd_pm_entry:return
0 17180 sd_pm_iostart:return
0 17181 sd_core_iostart:entry
0 17407 sd_add_buf_to_waitq:entry
...
|
この例の出力では、デフォルトアクションによって、プローブが起動した CPU、DTrace によって割り当てられたプローブ ID (整数値)、プローブが起動した関数、およびプローブ名が表示されています。
例 2–7 プロバイダを指定してプローブを有効にする
# dtrace -P syscall
dtrace: description 'syscall' matched 452 probes
CPU ID FUNCTION:NAME
0 99 ioctl:return
0 98 ioctl:entry
0 99 ioctl:return
0 98 ioctl:entry
0 99 ioctl:return
0 234 sysconfig:entry
0 235 sysconfig:return
0 234 sysconfig:entry
0 235 sysconfig:return
0 168 sigaction:entry
0 169 sigaction:return
0 168 sigaction:entry
0 169 sigaction:return
0 98 ioctl:entry
0 99 ioctl:return
0 234 sysconfig:entry
0 235 sysconfig:return
0 38 brk:entry
0 39 brk:return
...
|
例 2–8 名前を指定してプローブを有効にする
# dtrace -n zfod
dtrace: description 'zfod' matched 3 probes
CPU ID FUNCTION:NAME
0 4080 anon_zero:zfod
0 4080 anon_zero:zfod
^C
|
例 2–9 名前を完全指定してプローブを有効にする
# dtrace -n clock:entry
dtrace: description 'clock:entry' matched 1 probe
CPU ID FUNCTION:NAME
0 4198 clock:entry
^C
|