public static MetricNode fromFatString(String line) {
        String[] strs = line.split("\\|");
        Long time = Long.parseLong(strs[0]);
        MetricNode node = new MetricNode();
        node.setTimestamp(time);
        node.setResource(strs[2]);
        node.setPassQps(Long.parseLong(strs[3]));
        node.setBlockQps(Long.parseLong(strs[4]));
        node.setSuccessQps(Long.parseLong(strs[5]));
        node.setExceptionQps(Long.parseLong(strs[6]));
        node.setRt(Long.parseLong(strs[7]));
        if (strs.length >= 9) {
            node.setOccupiedPassQps(Long.parseLong(strs[8]));
        }
        if (strs.length >= 10) {
            node.setConcurrency(Integer.parseInt(strs[9]));
        }
        if (strs.length == 11) {
            node.setClassification(Integer.parseInt(strs[10]));
        }
        return node;
    }
@Test
    public void testFromFatString() {
        String line = "1564382218000|2019-07-29 14:36:58|/foo/*|1|0|1|0|0|0|2|1";
        MetricNode node = MetricNode.fromFatString(line);
        assertEquals(ResourceTypeConstants.COMMON_WEB, node.getClassification());
        assertEquals(2, node.getConcurrency());
        assertEquals(1, node.getSuccessQps());
    }