trace

式の結果を指定バッファにトレースします。

void trace(expr)

trace関数は、最も基本的なDTraceファンクションです。この関数は引数としてD式をとり、その結果を指定バッファにトレースします。

trace関数がバッファで使用される場合、出力フォーマットはデータ型によって異なります。データのサイズが1、2、4または8バイトの場合、結果は10進整数値としてフォーマット設定されます。データがこれ以外のサイズで、バイトのシーケンスとして解釈されるときに出力可能な文字の場合は、ASCII文字列として出力され、NULL文字(0)で終わります。データがこれ以外のサイズで、出力可能な文字のシーケンスでない場合には、16進整数としてフォーマット設定された一連のバイト値として出力されます。

rawbytes動的実行時オプションを指定すると、trace関数で常にバイナリ形式を使用するように強制できます。

例7-58 traceを使用して様々な出力を表示する方法

この例は、組込み変数、式および文字列値の出力を返すために使用されているtrace関数を示しています。

BEGIN
{
trace(execname);
trace(timestamp / 1000);
trace("somehow managed to get here");
}