String dumpLogSegmentSize(NavigableMap<LogSegmentName, Long> validDataSizeByLogSegment, long segmentCapacity,
      String dataDir) {
    int partialLogSegmentCount = index != null ? index.getPartialLogSegmentCount() : -1;
    long wastedLogSegmentSpace = index != null ? index.getWastedLogSegmentSpace() : -1;
    final StringBuilder sizeLog = new StringBuilder(
        dataDir + ": partialLog count= " + partialLogSegmentCount + " wasted "
            + wastedLogSegmentSpace / 1000 / 1000 / 1000 + "GB valid data size for log segments: ");
    validDataSizeByLogSegment.forEach((logSegmentName, validDataSize) -> {
      String validSize = String.format("%.1f", validDataSize / 1000 / 1000 / 1000.0);
      String percentage = String.format("%.1f", validDataSize * 1.0 / segmentCapacity * 100);
      sizeLog.append("f: " + logSegmentName + " " + validSize + "GB " + percentage + "%; ");
    });
    return sizeLog.toString();
  }
Dump the log segment size in a human readable way.
@param validDataSizeByLogSegment a map from log segment name to valid size
@param segmentCapacity Segment capacity of one {@link LogSegment}
@param dataDir data directory on the disk
@return the dump string of the log segment valid size in a human readable way.
ambry-store/src/main/java/com/github/ambry/store/BlobStoreStats.java