private void getStatsValue(boolean isWriting,
            MsgStoreStatsItemSet statsSet,
            StringBuilder strBuff) {
        strBuff.append("{\"").append(statsSet.resetTime.getFullName())
                .append("\":\"").append(statsSet.resetTime.getStrSinceTime())
                .append("\",\"isClosed\":").append(isStatsClosed()).append(",");
        statsSet.msgAppendSizeStats.getValue(strBuff, false);
        strBuff.append(",");
        statsSet.msgAppendDurStats.getValue(strBuff, false);
        strBuff.append(",\"").append(statsSet.msgAppendFailCnt.getFullName())
                .append("\":").append(statsSet.msgAppendFailCnt.getValue())
                .append(",\"").append(statsSet.cacheDataSizeFullCnt.getFullName())
                .append("\":").append(statsSet.cacheDataSizeFullCnt.getValue())
                .append(",\"").append(statsSet.cacheMsgCountFullCnt.getFullName())
                .append("\":").append(statsSet.cacheMsgCountFullCnt.getValue())
                .append(",\"").append(statsSet.cacheTimeFullCnt.getFullName())
                .append("\":").append(statsSet.cacheTimeFullCnt.getValue())
                .append(",\"").append(statsSet.cacheFlushPendingCnt.getFullName())
                .append("\":").append(statsSet.cacheFlushPendingCnt.getValue())
                .append(",\"").append(statsSet.cacheReAllocCnt.getFullName())
                .append("\":").append(statsSet.cacheReAllocCnt.getValue())
                .append(",\"").append(statsSet.cacheDataSizeFullCnt.getFullName())
                .append("\":").append(statsSet.cacheDataSizeFullCnt.getValue())
                .append(",\"").append(statsSet.fileAccumMsgCnt.getFullName())
                .append("\":").append(statsSet.fileAccumMsgCnt.getValue())
                .append(",\"").append(statsSet.fileAccumMsgDataSize.getFullName())
                .append("\":").append(statsSet.fileAccumMsgDataSize.getValue())
                .append(",\"").append(statsSet.fileAccumMsgIndexSize.getFullName())
                .append("\":").append(statsSet.fileAccumMsgIndexSize.getValue())
                .append(",");
        statsSet.fileFlusheDurStats.getValue(strBuff, false);
        strBuff.append(",");
        statsSet.fileFlushedDataSize.getValue(strBuff, false);
        strBuff.append(",");
        statsSet.fileFlushedMsgCnt.getValue(strBuff, false);
        strBuff.append(",\"").append(statsSet.fileDataSegAddCnt.getFullName())
                .append("\":").append(statsSet.fileDataSegAddCnt.getValue())
                .append(",\"").append(statsSet.fileIndexSegAddCnt.getFullName())
                .append("\":").append(statsSet.fileIndexSegAddCnt.getValue())
                .append(",\"").append(statsSet.fileMetaFlushCnt.getFullName())
                .append("\":").append(statsSet.fileMetaFlushCnt.getValue())
                .append(",\"").append(statsSet.fileDataSizeFullCnt.getFullName())
                .append("\":").append(statsSet.fileDataSizeFullCnt.getValue())
                .append(",\"").append(statsSet.fileMsgCountFullCnt.getFullName())
                .append("\":").append(statsSet.fileMsgCountFullCnt.getValue())
                .append(",\"").append(statsSet.fileCachedTimeFullCnt.getFullName())
                .append("\":").append(statsSet.fileCachedTimeFullCnt.getValue())
                .append(",\"").append(statsSet.snapShotTime.getFullName())
                .append("\":\"");
        if (isWriting) {
            strBuff.append(DateTimeConvertUtils.ms2yyyyMMddHHmmss(System.currentTimeMillis()));
        } else {
            strBuff.append(statsSet.snapShotTime.getStrSinceTime());
        }
        strBuff.append("\"}");
    }
Read metric block data into string format.

@param isWriting    the metric block is writing
@param statsSet     the metric block need to read
@param strBuff     the return buffer
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/broker/stats/MsgStoreStatsHolder.java