39 lines
776 B
Plaintext
39 lines
776 B
Plaintext
#!/usr/bin/env bpftrace
|
||
|
||
BEGIN
|
||
{
|
||
printf("开始统计 kvstore 进程的 tcp_rcv_established 调用次数...\n");
|
||
printf("每 5 秒打印一次统计,Ctrl-C 退出\n\n");
|
||
|
||
// 统计变量
|
||
@enter = 0;
|
||
@exit = 0;
|
||
}
|
||
|
||
interval:s:5
|
||
{
|
||
time("%H:%M:%S");
|
||
printf(" tcp_rcv_established 调用次数: %10d\n", @enter);
|
||
printf(" tcp_rcv_established ret 调用次数: %10d\n", @exit);
|
||
|
||
// 可选:如果想每轮清零统计,取消下面注释
|
||
// clear(@enter);
|
||
// clear(@exit);
|
||
}
|
||
|
||
kprobe:tcp_rcv_established
|
||
{
|
||
@enter++;
|
||
}
|
||
|
||
kretprobe:tcp_rcv_established
|
||
{
|
||
@exit++;
|
||
}
|
||
|
||
END
|
||
{
|
||
printf("\n最终统计:\n");
|
||
printf("tcp_rcv_established : %d 次\n", @enter);
|
||
printf("tcp_rcv_established ret: %d 次\n", @exit);
|
||
} |