14 自动发现块设备

文件系统 的自动发现类似, 块设备及设备的类型也可以被自动发现。

监控项键值

自动发现规则 监控项中使用以下键值

  1. vfs.dev.discovery

这个监控项只支持Linux平台。

可以使用此监控项和下列配置来创建自动发现规则:

  • 过滤器: {#DEVNAME} matches sd[\D]$ - 发现名为 “sd0”, “sd1”, “sd2”, … 的设备
  • 过滤器: {#DEVTYPE} matches disk AND {#DEVNAME} does not match ^loop.* - 发现硬盘类型不以 “loop” 开头的设备

支持的宏

此监控项返回两个宏 - {#DEVNAME} 和 {#DEVTYPE} 分别用于识别块设备名称和块设备类型, 例如:

  1. [
  2. {
  3. "{#DEVNAME}":"loop1",
  4. "{#DEVTYPE}":"disk"
  5. },
  6. {
  7. "{#DEVNAME}":"dm-0",
  8. "{#DEVTYPE}":"disk"
  9. },
  10. {
  11. "{#DEVNAME}":"sda",
  12. "{#DEVTYPE}":"disk"
  13. },
  14. {
  15. "{#DEVNAME}":"sda1",
  16. "{#DEVTYPE}":"partition"
  17. }
  18. ]

块设备的自动发现允许使用 vfs.dev.read[]vfs.dev.write[] 监控项和 {#DEVNAME} 宏来创建监控项原型, 例如:

  • “vfs.dev.read[{#DEVNAME},sps]“
  • “vfs.dev.write[{#DEVNAME},sps]“

{#DEVTYPE} 用于设备过滤。