private void collectDiskInfo() {
    for (String diskId : diskIdSet) {
      String diskSectorSizePath = String.format(DISK_SECTOR_SIZE_PATH, diskId);
      File diskSectorSizeFile = new File(diskSectorSizePath);
      try (Scanner scanner = new Scanner(Files.newInputStream(diskSectorSizeFile.toPath()))) {
        if (scanner.hasNext()) {
          int sectorSize = Integer.parseInt(scanner.nextLine());
          diskSectorSizeMap.put(diskId, sectorSize);
        } else {
          // use DEFAULT_SECTOR_SIZE byte as default value
          diskSectorSizeMap.put(diskId, DEFAULT_SECTOR_SIZE);
        }
      } catch (IOException e) {
        LOGGER.warn("Failed to get the sector size of {}", diskId, e);
        // use DEFAULT_SECTOR_SIZE bytes as default value
        diskSectorSizeMap.put(diskId, DEFAULT_SECTOR_SIZE);
      }
    }
  }
All data metrics are collected from <b>/proc/</b>.

<p><b>/proc/diskstats</b> is a file in Linux, it contains the running information of the disks,
including device name, read operation count, merged read operation count, write operation count,
merged write operation count etc. This class collects the data periodically and analyzes the
changes in each pieces of data to gain an insight of the disks of status.

<p><b>/proc/[PID]/io</b> is also a file in Linux, it indicates the io status of a specific
process. The content of it contains following items: actual read byte, actual write byte, read
system call count, write system call count, byte attempt to read, byte attempt to write,
cancelled write byte.
iotdb-core/metrics/interface/src/main/java/org/apache/iotdb/metrics/metricsets/disk/LinuxDiskMetricsManager.java