内置只读变量
pid- 进程 ID(内核 tgid)
tid- 线程 ID(内核 pid)
uid- 用户身份
gid- 群组编号
nsecs- 纳秒时间戳
elapsed- 自 bpftrace 初始化以来的纳秒
numaid- NUMA 节点 ID
cpu- 处理器 ID
comm- 进程名称
kstack- 内核堆栈跟踪
ustack- 用户堆栈跟踪
arg0, arg1, ..., argN。- 跟踪函数的参数;假定为 64 位宽
sarg0, sarg1, ..., sargN。- 跟踪函数的参数(对于在堆栈上存储参数的程序);假定为 64 位宽
retval- 跟踪函数的返回值
func- 跟踪函数的名称
probe- 探头的全名
curtask- 当前任务结构为 u64
rand- 作为 u32 的随机数
cgroup- 当前进程的Cgroup ID
cpid- 子 pid(u32),仅对-c command标志有效
$1, $2, ... $N, $#。- bpftrace 程序的位置参数
scratch
# 将$x声明为整数
$x = 1;
# 将$y声明为字符串
$y = "hello";
# 将$z声明为指向结构task_struct的指针
$z = (struct task_struct *)curtask;
Map类型
@path[pid] = 111