dtrace sample

本文介绍如何使用DTrace进行系统调用监控、进程跟踪、读取字节量化及性能指标统计,实现对GoogleChrome及其助动程序的深入性能分析。
#!/usr/sbin/dtrace -s
    
#pragma D option flowindent

/* monitor file open */
syscall::open:entry
{
    printf("%s %s", execname, copyinstr(arg0));
}

/* monitor process fork*/
syscall::fork*:
{
    trace(pid);
}

syscall::exec*:
{
    trace(execname);
}

syscall::posix_spawn*:
{
    trace(execname);
}

/* monitor syscall of process */
syscall:::entry
/execname == "Google Chrome" || execname == "Google Chrome Helper"/
{
    @[probefunc] = count();
}
        
/* show read bytes */
syscall::read:return
{
    @[execname] = quantize(arg0);
}

/* profilling process names*/
profile-997
{
    @[execname] = count();
}
    
tick-1s
{
    printa(@);
    trunc(@);
}

/* timing system call */
syscall::write:entry
{
    self->s = timestamp;
}
syscall::write:return
/self->s/
{
    @["ns"] = quantize(timestamp - self->s);
    self->s = 0;
}

 

转载于:https://www.cnblogs.com/Proteas/p/4069207.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值