trace工具的介绍和使用

Trace 主要用来跟踪和记录系统的内核(Kernel)、内核扩展程序(Kernel Extension)和用户程序(User Program),尤其是对系统调用(System Call),内核服务(Kernel Service)和中断处理(Interrupt handlers)进行详细的记录。它的记录单位是微秒,并按照时间的顺序记录各个事件。由于Trace记录中所涉及的是操作系统底层事件,因此需要对AIX的内核、系统调用以及中断处理非常了解的人来解读,因此对于普通的系统管理员最重要的是知道如何去收集Trace的信息。[@more@]Trace 主要用来跟踪和记录系统的内核(Kernel)、内核扩展程序(Kernel Extension)和用户程序(User Program),尤其是对系统调用(System Call),内核服务(Kernel Service)和中断处理(Interrupt handlers)进行详细的记录。它的记录单位是微秒,并按照时间的顺序记录各个事件。由于Trace记录中所涉及的是操作系统底层事件,因此需要对AIX的内核、系统调用以及中断处理非常了解的人来解读,因此对于普通的系统管理员最重要的是知道如何去收集Trace的信息。 


1. Trace 的工作模式 

Trace 命令有三种工作模式 -- 默认模式、单一模式和循环模式。默认模式是将Trace数据直接写到磁盘上,而单一模式和循环模式则都是先将Trace数据写到内存的缓冲区,待trace进程终止后再写回到磁盘;不同的是,单一模式是当缓冲区满了后,trace进程会自动停止,并将Trace数据写到磁盘,而在循环模式下,当缓冲区满后,trace进程不会停止,缓冲区会被覆盖并循环使用,只有输入“trcstop”命令后,trace进程才停止,并将Trace数据写到磁盘。 

2. Trace的启动和停止 

启动trace的方法有很多种,用户可参考“man trace”来获得帮助。 

这里举一个最常用的收集trace的命令作为例子:trace -a -l -T2000000 -L4000000 -o trace.out (2000000 和 4000000 只是一个例子) 

-a : 表示trace进程在后台运行(异步运行) 
-l :表示trace工作在循环模式 
-o :指定trace输出文件的目录和文件名,默认的输出文件名为 /var/adm/ras/trcfile 
-T :表示缓冲区的大小,单位为byte,默认值为128KB。 
-L :表示写到磁盘上的trace输出文件的大小,单位为byte,默认值为1MB。 

在循环模式下,trace输出文件的大小应最少是缓冲区大小的一倍;而在单一模式下,trace输出文件的大小应最少和缓冲区大小相等。 停止trace的方法很简单,只需要运行“trcstop”命令即可。 

注意: 
1. trace进程对系统的性能有比较大的影响,因此不要长时间的让trace保持在运行状态。 
2. trace所收集的数据包含了trace进程启动和停止之间的这段时间内所有的相关信息。所以,如果用户是想收集某个命令的trace信息,应当采用以下这种方式: 
trace -a -l ; command ; trcstop (command表示的是用户需要执行的命令) 

3. 分析trace数据所需要的相关文件 

当用户自己收集了trace数据后,除了需要将trace输出文件发给IBM的工程师以外,还需要运行 /usr/bin/trcnm -a > trcnm.out 命令,然后将 trcnm.out 和 /etc/trcfmt文件一并附上。
  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值