Solaris 动态跟踪指南

修改选项

在 D 脚本中,可以使用 #pragma D,并后跟字符串 option 和选项名称来设置选项。如果选项接受一个值,则该选项名称后应跟等号 (=) 和选项值。以下示例都是有效的选项设置:

#pragma D option nspec=4
#pragma D option grabanon
#pragma D option bufsize=2g
#pragma D option switchrate=10hz
#pragma D option aggrate=100us
#pragma D option bufresize=manual

dtrace(1M) 命令还可在命令行中接受选项设置,作为 -x 选项的参数。例如:


# dtrace -x nspec=4 -x grabanon -x bufsize=2g \
    -x switchrate=10hz -x aggrate=100us -x bufresize=manual

如果指定的选项无效,dtrace 将指示该选项名称无效并退出:


# dtrace -x wombats=25
dtrace: failed to set option -x wombats: Invalid option name
#

同样,如果给定选项的选项值无效,dtrace 将指示该值无效:


# dtrace -x bufsize=100wombats
dtrace: failed to set option -x bufsize: Invalid value for specified option
#

如果多次设置某选项,则后续设置将覆写先前的设置。某些选项(如 grabanon只能设置。此类选项表现为,您可以对其进行设置,但以后将无法取消该设置。

为启用匿名而设置的选项将由声明匿名状态的 DTrace 使用者接受。有关启用匿名跟踪的信息,请参见第 36 章