Ftrace查看block信息

文章介绍了如何利用Ftrace中的blktracer工具来追踪和分析Linux系统中块设备如vda的活动。通过启用blockeventtracepoint,然后对硬盘进行blktracer,记录并解析日志,可以观察到如读写、提交等详细操作信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ftrace查看block信息

blk tracer使用静态挂钩子的基础设施 block event ,在tracepoint上注册自己的钩子函数。

使用脚本

# 1. 使用 block event
echo 1 > ./events/block/eable
cat /test.c > /dev/null
cat ./trace

# 2. 使用 blk tracer
echo blk > ./current_tracer
echo 1 > /sys/block/vda/trace/enable # 对硬盘(vda)启动blk的tracer
cat /test.c > /dev/null
cat ./trace

观察日志

# tracer: blk
#
      jbd2/vda-8-73      [002] d... 78880.967292: 253,0    Q  WS 2097760 + 8 [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.967293: 253,0    Q   W 69040 + 8 [kworker/u8:0]
      jbd2/vda-8-73      [002] d... 78880.967772: 253,0    G  WS 2097760 + 8 [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.967806: 253,0    G   W 69040 + 8 [kworker/u8:0]
      jbd2/vda-8-73      [002] d... 78880.968122: 253,0    P   N [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.968140: 253,0    P   N [kworker/u8:0]
      jbd2/vda-8-73      [002] d... 78880.968190: 253,0    Q  WS 2097768 + 8 [jbd2/vda-8]
      jbd2/vda-8-73      [002] d... 78880.968319: 253,0    M  WS 2097768 + 8 [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.968497: 253,0    U   N [kworker/u8:0] 1
      jbd2/vda-8-73      [002] d... 78880.968501: 253,0    U   N [jbd2/vda-8] 1
      jbd2/vda-8-73      [002] d... 78880.969028: 253,0    I  WS 2097760 + 16 [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.969168: 253,0    I   W 69040 + 8 [kworker/u8:0]
      jbd2/vda-8-73      [002] d... 78880.969261: 253,0    D  WS 2097760 + 16 [jbd2/vda-8]
    kworker/u8:0-7       [003] d... 78880.969278: 253,0    D   W 69040 + 8 [kworker/u8:0]
          <idle>-0       [003] d.s. 78880.970474: 253,0    C  WS 2097760 + 16 [0]
          <idle>-0       [003] d.s. 78880.970687: 253,0    C   W 69040 + 8 [0]
      jbd2/vda-8-73      [002] d... 78880.971295: 253,0    Q FWFS 2097776 + 8 [jbd2/vda-8]
      jbd2/vda-8-73      [002] d... 78880.971338: 253,0    G FWFS 2097776 + 8 [jbd2/vda-8]
    kworker/2:1H-75      [002] d... 78880.971531: 253,0    D  FN [kworker/2:1H]
          <idle>-0       [003] d.s. 78880.974808: 253,0    C  FN 0 [0]
    kworker/3:1H-72      [003] d... 78880.975057: 253,0    D  WS 2097776 + 8 [kworker/3:1H]
          <idle>-0       [003] d.s. 78880.975527: 253,0    C  WS 2097776 + 8 [0]
    kworker/3:1H-72      [003] d... 78880.975752: 253,0    D  FN [kworker/3:1H]
          <idle>-0       [003] d.s. 78880.978367: 253,0    C  FN 0 [0]
          <idle>-0       [003] d.s. 78880.978395: 253,0    C  WS 2097776 [0]

输出日志格式查看说明文档
ps: 使用blktrace/blkparse工具和trace功能是一样的,只是应用接口不一样,输出结果一样。推荐使用blktrace/blkparse工具

参考资料

  1. 谢欢, ftrace公开课
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hinzer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值