printa
集積体のフォーマットを表示および制御します
void printa([string format,] @aggr )
printa
関数は、集積体の表示とフォーマットを可能にするデータ記録関数です。この関数は、printfフォーマット・ディレクティブを使用して出力フォーマットを指定する集積体と、オプションで文字列を受け取ります。フォーマット文字列が指定されていない場合、printa
はデフォルトのフォーマットを使用して指定された集約体を表示します。formatが指定されると、集積体のフォーマットが設定されます。
フォーマット・ディレクティブの詳細は、printf(1)
マニュアル・ページを参照してください。DTraceのprintf
の実装は相関するシステム関数と一致していますが、いくつかの違いが適用されます。特に、%d
フォーマット・ディレクティブは、任意の長さの整数を表すために使用できます。さらに、printa
は集積体ごとに適切なフォーマットも処理します。
例7-33 様々な集積体の基本フォーマットを出力するためにprintaを使用する方法
BEGIN
{
@a = avg(1);
@b = count();
@c = lquantize(1, 1, 10);
printa("@a = %@u\n", @a);
printa("@b = %@u\n", @b);
printa("@c = %@d\n", @c);
exit(0);
}