14 自动发现块设备

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

监控项键值

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

vfs.dev.discovery

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

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

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

支持的宏

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

[ 
          { 
             "{#DEVNAME}":"loop1",
             "{#DEVTYPE}":"disk"
          },
          { 
             "{#DEVNAME}":"dm-0",
             "{#DEVTYPE}":"disk"
          },
          { 
             "{#DEVNAME}":"sda",
             "{#DEVTYPE}":"disk"
          },
          { 
             "{#DEVNAME}":"sda1",
             "{#DEVTYPE}":"partition"
          }
       ]

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

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

{#DEVTYPE} 用于设备过滤。